Racket is een ontwikkeltaal waarmee andere ontwikkeltalen ontwikkeld kunnen worden. Daarnaast kan gewoon in Racket zelf ontwikkeld worden. Het stond eerder bekend onder de naam PLT Scheme en komt uit de Lisp-Scheme-familie. Voor de achtergrond verwijzen we naar het manifest, geschreven onder leiding van Matthias Felleisen. De ontwikkelaars hebben versie 8.6 van Racket uitgebracht en de changelog van die uitgave ziet er als volgt uit:
Changes in Racket version 8.6:
- Racket has an “equal-always?” primitive that equates values that will stay the same even if mutated. See here for more information.
- This release uses a new build system, Zuo, which is implemented as a little language, in accordance with the ideas of Language Oriented Programming (LOP). The implementation has a single C file (plus libraries implemented in Zuo), so it compiles easily. The
zuo/build
library is modeled onmake
and Shake for tracking dependencies and build steps. See here and here for more information.- Racket supports stencil vectors, which associate a virtual bitmask with a vector, enabling certain mask-equipped update operations. See here for more information.
- Racket supports Arm64 machines running Windows.
- Redex has support for simultaneous substitutions. See here for more information.
- The Web Server provides control over the maximum number of concurrent connections via its “safety limits” construct. See here for more information.
- The Web Server has improved logging performance and improved request parsing performance, reducing tail latencies.
- The Web Server supports logging response status code via web-server/dispatchers/dispatch-logresp. See here for more information.
- The
db
library supports custom types for PostgreSQL connections; seepg-custom-type
for details. See here for more information.- The release includes many other repairs and changes!