# Racket v8.16 draft release notes

**URL:** <https://racket.discourse.group/t/racket-v8-16-draft-release-notes/3518>\
**Category:** Internals\
**Tags:** release-management, release\
**Created:** [January 27, 2025, 5:09am UTC](https://racket.discourse.group/t/racket-v8-16-draft-release-notes/3518 "2025-01-27T05:09:28Z")\
**Posts on this page:** 1\
**Showing post:** 9

<div class="post-metadata">

**Author:** ![spdegabrielle](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/spdegabrielle/32/95_2.png) [@spdegabrielle](https://racket.discourse.group/u/spdegabrielle)\
**Post date:** [February 3, 2025, 8:43am UTC](https://racket.discourse.group/t/racket-v8-16-draft-release-notes/3518/9 "2025-02-03T08:43:02Z")

</div>

Updated  
I’ll admit I’ve forgotten how to determine documentation links- I think they have to wait till the release is live.

S.

* * *

- Expanded support for immutable and mutable treelists

- The [`serialize-structs`](https://pre-release.racket-lang.org/doc/reference/serialization.html#%28mod-path._racket%2Fserialize-structs%29) module allows the minimization of  
dependencies by providing only a handful of core forms

- The [`flbit-field`](https://pre-release.racket-lang.org/doc/reference/flonums.html#%28def._%28%28lib._racket%2Fflonum..rkt%29._flbit-field%29%29) function allows access to the binary  
representation of IEEE floating-point numbers.

- The top-left search box in the [documentation](https://pre-release.racket-lang.org/doc/index.html) works once more.

- The [XML reader](https://pre-release.racket-lang.org/doc/xml/index.html#%28part._.Reading_and_.Writing_.X.M.L%29) is 2-3x faster on inputs with long CDATA  
and comments, and avoids some internal contract checks to  
obtain a 25% speedup on large documents generally.

- The [pregexp syntax includes "\X" to match a grapheme cluster](https://pre-release.racket-lang.org/doc/reference/regexp.html#(part._regexp-syntax)),  
following Perl and PCRE.

- The [`read-json*`](https://pre-release.racket-lang.org/doc/json/index.html#%28def._%28%28submod._%28lib._json%2Fmain..rkt%29._for-extension%29._read-json%2A%29%29) and [`write-json*`](https://pre-release.racket-lang.org/doc/json/index.html#%28def._%28%28submod._%28lib._json%2Fmain..rkt%29._for-extension%29._write-json%2A%29%29) functions allow customization of  
the Racket representation of JSON elements, eliminating the need for  
a separate "translation" pass.

- New port I/O functions

- A revised representation of pointers improves the performance of foreign  
function calls.

- In anticipation of the fifteenth [RacketCon](https://con.racket-lang.org), the [`fifteenth`](https://pre-release.racket-lang.org/doc/reference/pairs.html#%28def._%28%28lib._racket%2Flist..rkt%29._fifteenth%29%29) function  
returns the fifteenth element of a list.

- Racket has an improved multi-line convention for error messages.

- The [`db` library](https://pre-release.racket-lang.org/doc/db/index.html) allows [`prepare`](https://pre-release.racket-lang.org/doc/db/query-api.html#%28def._%28%28lib._db%2Fbase..rkt%29._prepare%29%29) on virtual statements.

- The [`student-t` distribution](https://pre-release.racket-lang.org/doc/math/Real_Distribution_Families.html#%28part._.Student-t_.Distributions%29) is part of the [`math/distributions` library](https://pre-release.racket-lang.org/doc/math/dist.html).

- [Expeditor](https://pre-release.racket-lang.org/doc/expeditor/index.html) supports customizing the prompt, using the [`prompt`  
argument to `call-with-expeditor`](https://pre-release.racket-lang.org/doc/expeditor/Expeditor_API.html#%28def._%28%28lib._expeditor%2Fmain..rkt%29._call-with-expeditor%29%29).

- There is a [guide to adding internationalization for a new (human)  
language.](https://racket.discourse.group/t/advent-2024-day-translate-drracket-interface-in-your-language/3407)

- `#lang htdp/asl` incorporates [Graphical Debugger](https://docs.racket-lang.org/drracket/debugger.html#%28part._.Debugger_.Buttons%29) support.

- There is lots of new documentation, and many defects repaired!

The following people contributed to this release:

a11ce, Alex Knauth, Alexander Shopov, Alexis King, Andrew  
Mauer-Oats, Anthony Carrico, Bert De Ketelaere, Bob Burger, Bogdan  
Popa, D. Ben Knoble, David Van Horn, Gustavo Massaccesi, halfminami,  
Hao Zhang, Jacqueline Firth, Jinser Kafka, JJ, John Clements, Jörgen  
Brandt, Kraskaska, lafirest, Laurent Orseau, lukejianu, Marc  
Nieper-Wißkirchen, Matthew Flatt, Matthias Felleisen, mehbark, Mike  
Sperber, Noah Ma, Onorio Catenacci, Oscar Waddell, Pavel Panchekha,  
payneca, Robby Findler, Sam Phillips, Sam Tobin-Hochstadt, Shu-Hung  
You, Sorawee Porncharoenwase, Stephen De Gabrielle, Wing Hei Chan,  
Yi Cao, and ZhangHao.

* * *

---

_[View the full topic](https://racket.discourse.group/t/racket-v8-16-draft-release-notes/3518)._
