Racket v8.12 is now available
We are pleased to announce Racket v8.12 is now available from https://download.racket-lang.org/
As of this release:
- The "Die Macht der Abstraktion" language levels are no longer present, replaced by the "Schreibe dein Programm" language levels which have been available for several years. (see DeinProgramm - Schreibe Dein Programm! )
- The release fixes a problem with the binding structure of the
for/fold
form in the rare situation when an iteration clause identifier shadowed an accumulator identifier. This change may break code that depends on the old binding structure. (see 3.18 Iterations and Comprehensions: for, for/list, ... ) - Racket automatically sets the close-on-exec flag when opening a file, on systems where this is available. This change lowers the cost of avoiding problems that can occur when file descriptors become accidentally shared between processes. (see 13.1.5 File Ports )
- Match includes
hash
andhash*
patterns. (see 9 Pattern Matching ) - The
vector-set/copy
function allows creation of a new vector that differs at only one index. This change also addsvector-append
andvector-copy
primitives. (see 4.12 Vectors ) - The
pregexp-quote
function brings the functionality ofregexp-quote
to pregexps. (see 4.8 Regular Expressions ) - The C FFI convention-based converter supports
PascalCase
andcamelCase
in addition to an underscore-based convention. (see 5.6 Defining Bindings ) - The
racket/case
library allowscase
-like forms that use different equality comparisons, such aseq?
andequal-always?
. (see 3.13 Dispatch: case) - Scribble rendering to HTML adds linking and information buttons when hovering over heading titles.
- The
interval-map
data structure supports iterator functions in the style
ofgen:ordered-dict
. (see 3 Orders and Ordered Dictionaries )
This release also includes many other documentation improvements, optimizations, and bug fixes!
Thank you
Thank you to the people who contributed to this release:
Alex Harsányi, Alex Knauth, Alex Muscar, Alexis King, Ben Greenman, Bert De Ketelaere, Bob Burger, Bogdan Popa, Chris Payne, Fred Fu, J. Ryan Stinnett, Jamie Taylor, Jared Forsyth, Jarhmander, Jens Axel Søgaard, Joel Dueck, John Clements, Jordan Johnson, Ken Harris, Laurent Orseau, Mao Yifu, Marc Nieper-Wißkirchen, Matteo d’Addio, Matthew Flatt, Matthias Felleisen, Micah Cantor, Mike Sperber, naveen srinivasan, Oscar Waddell, Philip McGrath, Philippe Meunier, Robby Findler, Rocketnia, Sam Phillips, Sam Tobin-Hochstadt, Sarthak Shah, Shu-Hung You, Sorawee Porncharoenwase, Stephen De Gabrielle, Tom Price, ur4t, Wing Hei Chan, and ZhangHao
Feedback Welcome
Questions and discussion welcome at the Racket community Discourse or Discord
Please share
If you can - please help get the word out to users and platform specific repo packagers
Racket—the Language-Oriented Programming Language—version 8.12 is now available from https://download.racket-lang.org
See https://racket.discourse.group/t/racket-v8-12-is-now-available/2709 for the release announcement and highlights.
Thank you to the many people who contributed to this release!
Feedback Welcome