posted by Stephen De Gabrielle and John Clements
We are pleased to announce Racket v9.1 is now available from https://download.racket-lang.org/.
for form and its variants accept an #:on-length-mismatch specifier. 3.18 Iterations and Comprehensions: for, for/list, …exn-classify-errno maps network and filesystem error numbers on various platforms to posix-standard symbols, to enable more portable code. 10.2 Exceptionseq?) is changed to match that of Racket CS, with a small performance penalty for these operations for BC programs. 19 Performance 1.5 Implementationsmake-struct-type procedure can inherit the current inspector using a 'current flag. This is the default behavior, but there are situations in which it’s not possible to refer to the current inspector. 5.2 Creating Structure Types--enable-sofind=<conv> flags.system-type function can report on platform and shared-object-library conventions with new flags. 15.8 Environment and Runtime Informationopenssl/legacy library makes it possible to access OpenSSL’s built-in “legacy” provider, to get access to insecure and outdated algorithms. OpenSSL: Secure CommunicationDon’t forget to run raco pkg migrate 9.0
The following people contributed to this release:
Alexander Shopov, beast-hacker, Bob Burger, Brad Lucier, Cadence Ember, David Van Horn, evan, François-René Rideau, Gustavo Massaccesi, Jacqueline Firth, Jade Sailor, Jason Hemann, Jens Axel Søgaard, John Clements, Jonas Rinke, Matthew Flatt, Matthias Felleisen, Mike Sperber, Noah Ma, Pavel Panchekha, Rob Durst, Robby Findler, Ryan Culpepper, Sam Tobin-Hochstadt, Stephen De Gabrielle, and Wing Hei Chan.
Racket is a community developed open source project and we welcome new contributors. See racket/README.md to learn how you can be a part of this amazing project.
Questions and discussion welcome at the Racket community on Discourse or Discord.
If you can - please help get the word out to users and platform specific repo packagers
Racket - the Language-Oriented Programming Language - version 9.1 is now available from https://download.racket-lang.org
See https://blog.racket-lang.org/2026/02/racket-v9-1.html for the release announcement and highlights.
https://htdp.org/2024-11-6/Book/index.html
More accesible than SICP, highly recommended
The biggest downside of Racket is that you can't build up your environment incrementally the way you can with Common Lisp/Sly. When you change anything in your source you reload REPL state from scratch. After CL it feels incredibly limiting in a Lisp. Incremental buildup is so valuable, if I wanted to do any Lisp work again I'd reach for CL before Racket just for this reason.
BTW, the book is _great_. Quick, easy to get through, very easy to understand, and teaches you everything from soup to nuts. If you're familiar with lisps you can get through the book in two weeks. It's then easy to get into any deep learning tutorial or project you want, or even start implementing some papers. The book manages not to water down the material despite not using any math at all. Although if you know some linear algebra or multivariable calculus you'll appreciate the beauty of the field more.
I have really been enjoying writing it! Paredit and SLIME are addictive.
The appendix on autodiff is a bit rushed, in my opinion. But in all fairness, the number of pages would probably need to be doubled to give a proper exposition of autodiff.
I don’t quite understand… I’m using Racket in emacs/SLIME and I can eval-last-sexp, regions, etc.
I think no Lisp is a "true" Lisp if it doesn't provide two critical components of the Lisp experience:
- Live Images
- REPL-driven development
That's why Clojure/Racket and even Scheme are Lisp-y but not a true Lisp. The only true Lisp languages I've found are CL and Janet.
EDIT: ok with geiser and geiser-racket incremental state buildup works really well. I rescind my objection!