Skip to content

Commit 1e48bd7

Browse files
Update 2025-01-31-racket-v8-16.md
added links to pre-release.racket-lang.org/doc I believe a simple substitution give the correct address once live `pre-release.racket-lang.org/doc`==>`docs.racket-lang.org/doc`
1 parent 72fc27e commit 1e48bd7

File tree

1 file changed

+55
-4
lines changed

1 file changed

+55
-4
lines changed

blog/_src/posts/2025-01-31-racket-v8-16.md

+55-4
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,62 @@ We are pleased to announce Racket v8.16 is now available from [https://download.
1212

1313
## As of this release:
1414

15-
- Single line.
15+
- Expanded support for immutable and mutable treelists
16+
- A variety of new treelist utility functions are available:
17+
[`treelist-filter`](https://pre-release.racket-lang.org/doc/reference/treelist.html#%28def._%28%28lib._racket%2Ftreelist..rkt%29._treelist-filter%29%29), [`treelist-flatten`](https://pre-release.racket-lang.org/doc/reference/treelist.html#%28def._%28%28lib._racket%2Ftreelist..rkt%29._treelist-flatten%29%29), et cetera.
18+
- The [`mutable-treelist-prepend!`](https://pre-release.racket-lang.org/doc/reference/treelist.html#%28def._%28%28lib._racket%2Fmutable-treelist..rkt%29._mutable-treelist-prepend%21%29%29) function allows prepending to mutable treelists.
19+
- [Mutable treelists](https://pre-release.racket-lang.org/doc/reference/treelist.html#%28part._.Mutable_.Treelists%29) are [serializable](https://pre-release.racket-lang.org/doc/reference/serialization.html).
20+
21+
- The [`serialize-structs`](https://pre-release.racket-lang.org/doc/reference/serialization.html#%28mod-path._racket%2Fserialize-structs%29) module allows the minimization of
22+
dependencies by providing only a handful of core forms
23+
- 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
24+
representation of IEEE floating-point numbers.
25+
- The top-left search box in the [documentation](https://pre-release.racket-lang.org/doc/index.html) works once more.
26+
- 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
27+
and comments, and avoids some internal contract checks to
28+
obtain a 25% speedup on large documents generally.
29+
- The [pregexp syntax includes "\X" to match a grapheme cluster](https://pre-release.racket-lang.org/doc/reference/regexp.html#(part._regexp-syntax)),
30+
following Perl and PCRE.
31+
- 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
32+
the Racket representation of JSON elements, eliminating the need for
33+
a separate "translation" pass.
34+
35+
- New port I/O functions
36+
- The [`open-input-nowhere`](https://pre-release.racket-lang.org/doc/reference/port-lib.html#%28def._%28%28lib._racket%2Fport..rkt%29._open-input-nowhere%29%29) function creates an empty input port.
37+
- The [`pipe-port?`](https://pre-release.racket-lang.org/doc/reference/pipeports.html#%28def._%28%28quote._~23~25kernel%29._pipe-port~3f%29%29) function makes it possible to determine whether a
38+
port is created by [`make-pipe`](https://pre-release.racket-lang.org/doc/reference/pipeports.html#%28def._%28%28quote._~23~25kernel%29._make-pipe%29%29).
39+
- The [`port-file-stat`](https://pre-release.racket-lang.org/doc/reference/file-ports.html#%28def._%28%28quote._~23~25kernel%29._port-file-stat%29%29) function allows gathering information about the
40+
file that is the source or target of a file-stream port.
41+
42+
- A revised representation of pointers improves the performance of foreign
43+
function calls.
44+
- [`ptr-ref`](https://pre-release.racket-lang.org/doc/foreign/foreign_pointer-funcs.html#%28def._%28%28quote._~23~25foreign%29._ptr-ref%29%29) and [`ptr-set!`](https://pre-release.racket-lang.org/doc/foreign/foreign_pointer-funcs.html#%28def._%28%28quote._~23~25foreign%29._ptr-set%21%29%29) are substantially faster.
45+
- [Details the FFI improvement (with some benchmarking results)](https://racket.discourse.group/t/fixnum-slow-despite-docs/3409/6)
46+
47+
- 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
48+
returns the fifteenth element of a list.
49+
- Racket has an improved multi-line convention for error messages.
50+
- 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.
51+
- 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).
52+
- [Expeditor](https://pre-release.racket-lang.org/doc/expeditor/index.html) supports customizing the prompt, using the [`prompt`
53+
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).
54+
- There is a [guide to adding internationalization for a new (human)
55+
language.](https://racket.discourse.group/t/advent-2024-day-translate-drracket-interface-in-your-language/3407)
56+
- `#lang htdp/asl` incorporates [Graphical Debugger](https://docs.racket-lang.org/drracket/debugger.html#%28part._.Debugger_.Buttons%29) support.
57+
- There is lots of new documentation, and many defects repaired!
1658

17-
- Paragraph paragraph paragraph paragraph paragraph paragraph paragraph
18-
paragraph paragraph paragraph paragraph paragraph paragraph paragraph
19-
paragraph. ([link text](https://docs.racket-lang.org/links-to-thing))
59+
The following people contributed to this release:
60+
61+
a11ce, Alex Knauth, Alexander Shopov, Alexis King, Andrew
62+
Mauer-Oats, Anthony Carrico, Bert De Ketelaere, Bob Burger, Bogdan
63+
Popa, D. Ben Knoble, David Van Horn, Gustavo Massaccesi, halfminami,
64+
Hao Zhang, Jacqueline Firth, Jinser Kafka, JJ, John Clements, Jörgen
65+
Brandt, Kraskaska, lafirest, Laurent Orseau, lukejianu, Marc
66+
Nieper-Wißkirchen, Matthew Flatt, Matthias Felleisen, mehbark, Mike
67+
Sperber, Noah Ma, Onorio Catenacci, Oscar Waddell, Pavel Panchekha,
68+
payneca, Robby Findler, Sam Phillips, Sam Tobin-Hochstadt, Shu-Hung
69+
You, Sorawee Porncharoenwase, Stephen De Gabrielle, Wing Hei Chan,
70+
Yi Cao, and ZhangHao.
2071

2172
## Thank you
2273

0 commit comments

Comments
 (0)