Racket v6.2
posted by Ryan Culpepper
Racket version 6.2 is now available from http://racket-lang.org/
With this release we are taking a major step forward to get our user community even more involved than in the past. Over the past six months, we have re-organized the Racket code base into a small core code repo and many other package repos, all found on GitHub. If you have time and if you wish to get involved, please take a look at the GitHub repos and find your favorite places to learn, fix, and enhance our world.
The core repo is at https://github.com/plt/racket, and the package repos are listed at https://github.com/racket/.
-
The package manager supports a direct references to Git repositories via “git://[…]”, “http://[…].git”, and “https://[…].git” URLs. (Previously, only references to GitHub were supported.)
-
A
--clone
option forraco pkg install
orraco pkg update
facilitates Git-based package development. If a package X has a Git repository source, installing and updating the package pulls from the repository in a read-only mode. Usingraco pkg update --clone X
switches the local installation to a repository checkout that is suitable for modifying the package implementation, issuing pull requests, pushing changes, and so on.
Using raco pkg update --lookup X
switches the package back to the default installation mode.
-
Its on-line check syntax works with graphical content.
-
Increased availability of DrRacket’s blueboxes, including method and constructor information.
-
The “Open Require Path” menu item supports ".." in relative pathnames.
- Added
data/enumerate
, a library that supports efficient enumeration of data structures
-
Its
redex-check
facility uses data (in addition to random) enumeration to try to find counter-examples. -
Its
generate-term
function accepts additional arguments to return the “i”-th member of a pattern usingdata/enumerate
(meaning it efficiently supports very large values of “i”). -
The examples collection includes Launchbury’s 1993 big-step lazy semantics.
-
2htdp/image
’s polygon may be built out of bezier curves instead of just straight lines (see the docs forpulled-point
). -
2htdp/abstraction
is a teachpack for instructors and students who wish to usefor/*
loops,match
,define-type
andtype-cases
in ISL and ISL+. -
2htdp/universe
programs can be exported using DrRacket’s executable creation mechanism and they behave properly when run independently.
-
Typed Racket in DrRacket displays tooltips that show the types of expressions. Tooltips are also displayed for type errors.
-
Typed Racket loads generated contracts only when needed. This reduces memory use and startup time for Typed Racket programs.
-
Typed Racket has improved support for prefab structures, future semaphores, and async channels.
-
Typed Racket understands when two different variables refer to the same thing, and updates types accordingly. This particularly improves the type checking of macros such as
match
.
Feedback Welcome