Racket v6.0.1
posted by Ryan Culpepper
Racket version 6.0.1 is now available from
- A new
racket/undefined
library exportsundefined
as the value currently produced by
(letrec ([x x]) x) This library anticipates a future where that expression will raise an exception. The racket/undefined
library will continue to offer the undefined
value as a bridge between versions and as a last resort.
-
The drawing and GUI libraries provide improved support for high-resolution bitmaps and their use on Retina displays. For example,
read-bitmap
includes a#:try-@2x?
option to trigger substitutions through the usual "@2x" naming convention. -
Check Syntax cooperates with Typed Racket to show arrows and other Check Syntax highlighting even when there is a type error.
-
Functions provided via
contract-out
that have first-order contracts perform better. -
The contract boundary between typed/untyped modules is much less expensive. Typed Racket now avoids generating contracts for places where contracts failures cannot happen.
-
Occurrence typing now works better with
when
/unless
. Example:
-
Types in Typed Racket are now pretty-printed.
-
Function types can now be written in prefix style, which is now preferred and is used for printing. Infix function types are still accepted for backwards compatibility.
-
A new
->*
type constructor is used for writing types for functions with optional and keyword arguments. The notation is similar to the matching contract combinator. -
Typed Racket forms do not have a
:
suffix by default now. For example, thestruct
form replacesstruct:
. The suffixed versions are all provided for backwards compatibility. -
Typed Racket now has preliminary support for classes and objects. However, it is still experimental and the APIs are subject to change.
-
Type aliases in Typed Racket now support recursion and mutual recursion. For example,
(define-type (MyList X) (U Null (Pair X (MyList X))))
is now a valid type alias. -
Plot correctly renders intersecting 3D graphs and non-grid-aligned 3D rectangles.
-
Elements in plots output in PDF/PS format have the same relative scale as in other formats. In particular, it is not necessary to adjust
plot-font-size
to make PDF plots look the same as PNG.
Racket blog … Talk about Rackets !! I know some people running quite a rachet !
Ask Annabel
— IOnlyDealInMiracles, 24 May 2014
Dear Annabel,
On a scale of 1 to 10, how rachet would you say you are?
Ben
— Benjamin Greenman, 25 May 2014
Please, provide PGP signatures for the installers and/or support download over SSL. I would not risk running an executable on my computer unless I can verify it’s origin.
— verduphs, 2 June 2014
Funny. I came here from the old plt site and initially misread the redirection alert: “PLT is now a racket!”
— Unknown, 19 June 2014