Racket 6.8 发布了,该版本包含如下改进内容:
Racket sports a new logo, courtesy of Matthew Butterick.
MacBook Pro laptops with touch bars are supported.
Support for FreeBSD on PowerPC.
Initial support for GTK3 on Wayland is available. GL contexts, GC blits, and dialog placement currently do not work.
The macro stepper provides a command-line interface via the raco macro-stepper command.
Typed Racket more efficiently represents and computes types and propositions, resulting in faster type checking for many programs. For more details, see this blog post by Andrew Kent.
The bytecode optimizer can reduce more expressions of the form (equal? x y) to (eqv? x y) or (eq? x y) when the type of x or y is known.
The bytecode optimizer avoids dropping stack frames in some reductions. This provides better stack traces for errors when errotrace is enabled.
The bytecode compiler detects more optimization opportunities, including when variables always hold a boolean value. In particular in expressions like (or (symbol? x) (something)), the optimizations avoid the creation of an intermediate variable to store the result of (symbol? x).
The syntax form preserves syntax properties on all template pieces.
The scribble/html/extra module provides renderers for HTML elements that are part of the WHATWG HTML standard but not part of the scribble/html language by default (e.g., map, time, video).
The DeinProgramm teaching languages support pattern matching using the match form.
In the DeinProgramm languages, define-record-procedures supports specifying signatures as part of the form, instantly enabling properties quantifying over such records.
下载地址:https://download.racket-lang.org/
Racket源自著名的专家型语言PLT Scheme,同时又是Lisp语言的一个分支。它适用于从脚本Script到应用程序开发的任务执行工具,包括图形用户界面,Web服务器等。支持编译器的虚拟机,创建独立的可执行程序的工具,Racket Web服务器,具有丰富而全面的功能库,适用于初学者和专家编程。