Hasty Briefsbeta

Bilingual

Racket – the Language-Oriented Programming Language – 8.17 is now available

a year ago
  • #programming
  • #release
  • #racket
  • Racket v8.17 introduces the new `drracket-core` package with fewer dependencies.
  • Typed Racket now supports treelists.
  • Package manager computes checksums for packages, enabling automatic upgrades.
  • New `bitwise-first-bit-set` function returns the smallest set bit in a number.
  • Updated `dynamic-require` function simplifies syntax bindings usage.
  • Customizable module-path display in error messages via `error-module-path->string-handler`.
  • Improved precision for numeric functions (`sin`, `cos`, etc.) on Windows using MSVCRT/UCRT libraries.
  • Enhanced performance and reduced memory usage for `string-append` in Racket CS.
  • TCP ports use `SO_KEEPALIVE` for connection responsiveness checks.
  • Windows terminal now supports mouse events as virtual terminal characters.
  • New `#:replace-malformed-surrogate?` keyword for handling malformed Unicode surrogates in JSON.
  • http-client module no longer sends "Content-Length: 0" for body-less requests.
  • Demodularizer (`compiler/demod`) can prune more unused assignments.
  • Redex replaces judgment rendering forms with functions for better abstraction.
  • DrRacket's language-dialog moves to preferences if no teaching languages are included.
  • Math library improvements for block-diagonal matrices, `acos`, and `matrix-(cos-)angle`.
  • Stepper functionality restored for `big-bang` programs.
  • Numerous other repairs and documentation improvements.