Okay, here's what I've got now. I just spent way too long on an at-exp format that generates both markdown and text-file-style (no markdown links, lines broken at 80 chars). I'm going to paste the markdown one, let's see how it looks. @spdegabrielle , I diffed against your markdown, and I think the only changes are minor and deliberate. Let me know if you see problems!
As of this release:
- Racket has expanded support for immutable and mutable treelists:
- A variety of new treelist utility functions are available:
treelist-filter,treelist-flatten, et cetera. - The
mutable-treelist-prepend!function allows prepending to mutable treelists. - Mutable treelists are serializable.
- A variety of new treelist utility functions are available:
- The
serialize-structsmodule allows the minimization of dependencies by providing only a handful of core forms. - The
flbit-fieldfunction allows access to the binary representation of IEEE floating-point numbers. - The top-left search box in the documentation works once more.
- The XML reader 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, following Perl and PCRE.
- The
read-json*andwrite-json*functions allow customization of the Racket representation of JSON elements, eliminating the need for a separate "translation" pass. - Racket has new port I/O functions:
- The
open-input-nowherefunction creates an empty input port. - The
pipe-port?function makes it possible to determine whether a port is created bymake-pipe. - The
port-file-statfunction allows gathering information about the file that is the source or target of a file-stream port.
- The
- A revised representation of pointers improves the performance of foreign function calls. As a result,
ptr-refandptr-set!are substantially faster. - In anticipation of the fifteenth RacketCon, the
fifteenthfunction returns the fifteenth element of a list. - Racket has an improved multi-line convention for error messages.
- The
dblibrary allowsprepareon virtual statements. - The
student-tdistribution is part of themath/distributionslibrary. - Expeditor supports customizing the prompt, using the
#:promptkeyword argument tocall-with-expeditor. - There is a guide to adding internationalization for a new (human) language.
- Optimizations to racket/profile improve asymptotic speed for very large call graphs.
- The
#lang htdp/asllanguage incorporates Graphical Debugger support. - There is lots of new documentation, and many defects repaired!