Racket 6.8 發布,Lisp 語言分支 - OSCHINA - 中文開源技術交流社區

2020-12-25 開源中國

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伺服器,具有豐富而全面的功能庫,適用於初學者和專家編程。

相關焦點