Racket v6.1.1
posted by Ryan Culpepper
Racket version 6.1.1 is now available from http://racket-lang.org/
-
The Mac OS X Yosemite compatibility problems are fixed. We bundled a patched Pango text-drawing library with Racket.
-
The Windows [32-bit] releases fixes the window-update crashes. We bundled a patched Cairo drawing library with Racket.
-
Typed Racket closes two safety holes in the exception system. The revised type system restricts
raise
to send only instances of theexn
structure type and flat data to handlers. It also checks exception handlers properly. Note: Previously well-typed programs may fail to typecheck. -
Typed Racket’s typed regions support casts and predicates.
-
2htdp/image’s notion of equality ignores an image’s baseline.
-
The package manager supports a binary library installation mode, which allows users to install packages without source or documentation. Use the
--binary-lib
option withraco pkg install
. -
The new drracket-tool-lib package factors out parts of DrRacket’s IDE so that they can be reused with other editors, such as Emacs.
-
The compiler’s use-before-defined analysis has been repaired for certain forms of nested
letrec
, somelet
forms, and some uses ofset!
orwith-continuation-mark
. -
The compiler performs additional bytecode optimizations. Thanks to Gustavo Massaccesi.
-
The CML library comes with a new
replace-evt
event constructor. Thanks to Jan Dvořák. -
Redex’s benchmark suite comes with a description of the benchmark programs.
-
Redex’s metafunctions can be typeset using the “large left brace” notation for conditionals.
-
The contract library comes with an improved
contract-stronger?
. Its error messages note that the contract itself might be wrong. -
The GUI library is DPI-aware on Windows.
-
The openssl library supports Server Name Indication for servers. Thanks to Jay Kominek.
-
The syntax/parse library allows the definition of new pattern forms via pattern expanders, similar to match expanders. Thanks to Alex Knauth.
-
OpenGL on Linux no longer depends on libgtkgl, and core profiles are supported (see
set-legacy?
). -
The teaching languages’ unit test framework supports
check-satisfied
, a construct for checking whether a result satisfies a predicate, e.g.:
(check-satisfied (sort l) sorted?)
Feedback Welcome