- The new Macro Profiler command-line tool (`raco macro-profiler`) shows
how macros contribute to the final expanded code size of a program.
- Typed Racket supports intersection types. This allows the type system
to track more information, and for programmers to express more precise
- Typed Racket produces up to 4x smaller compiled files compared with
Racket 6.5, reducing the size of the Racket distribution by 50M.
- Typed Racket issues warnings in cases where the contract generated for
`Any` was not strict enough in the past. These warnings will become
errors in a future release. Warnings are enabled via View -> Show Log
in DrRacket, and shown by default on command-line Racket.
- Typed Racket enforces uses of `cast` more correctly, by checking both
the "casted-to" and "casted-from" types. Previously, only the former
were checked. In some cases, this will produce contract errors in
programs that did not have errors before.
- `syntax-parse` raises an error when an ellipsis pattern has an empty
match rather than diverging, and it logs a warning when it statically
detects a nullable pattern, such as `((~seq) ...)`. In the next version
of Racket, it will reject the pattern instead, and it will remove
special handling that currently makes some uses of such patterns
- `htdp/dir`: The `create-dir` function delivers data information for
files in a new field. The domain of its functions are backwards
The following people contributed to this release:
Alex Knauth, Alexander Shopov, Alexis King, Andrew Kent, Asumu Takikawa,
Ben Greenman, Bernardo Sulzbach, Brian Lachance, Chris Jester-Young, Dan
Feltey, Eric Dobson, Georges Dupéron, Gustavo Massaccesi, James Bornholt,
Jay McCarthy, John Clements, Leandro Facchinetti, Leif Andersen, Maksim
Kochkin, Matthew Flatt, Matthias Felleisen, Mike Sperber, Paul Stansifer,
Pedro Caldeira, Philip McGrath, Robby Findler, Ryan Culpepper, Sam
Tobin-Hochstadt, Spencer Florence, Stephen Chang, Stephen De Gabrielle,
Tim Brown, Tony Garnock-Jones, Vincent St-Amour, WarGrey Gyoudmon Ju,
William J. Bowman, and Zeina Migeed.