BT

InfoQ ホームページ ニュース Racket 6.3登場。新しいマクロ展開器、Redexの改善など

Racket 6.3登場。新しいマクロ展開器、Redexの改善など

ブックマーク

原文(投稿日:2015/12/05)へのリンク

PLT DesignがRacket 6.3を発表した。これはLisp/Schemeファミリーに属するマルチパラダイム・プログラミング言語の最新バージョンだ。Racket 6.3には新しいマクロ展開器、改善されたRedex DSL、GTK3サポートなどが含まれている。

マクロはLispベースの言語で最も典型的な機能の一つだ。Racket 6.3は“set of scopes”と呼ぶバインディングの新しい表現モデルを導入している。これは以前の健全なマクロ(hygienic macro)式を置き換えるものだ。PLTの研究者Matthew Flatt氏によると、新しいマクロ展開器は以前のものよりも使いやすく、バインディング失敗時により良い診断を提供し、実装がシンプルなので、バグを生みにくいという。欠点は、新しいマクロシステムは以前のRacketマクロと完全互換でないことだ。

Racket 6.3ではRedexパターンの構文エラーチェックも改善されている。Redex操作的意味論を規定・デバッグするためのドメイン固有言語で、言語を形式的にモデル化するのに使われる。

Racket 6.3のその他の新機能を以下に挙げる。

  • GTK+3のGUIサポート。利用可能なとき自動的に使われる。PLT_GTK2をオーバーライドしない。
  • Typed Racketのサブモジュールサポート。新しいマクロ展開器により可能になる。これまでサブモジュールの使用で苦しめられたエラーの原因を完全に取り除く。
  • 新しいtyped/racket/unsafeにより契約生成を回避できる。これは安全性とデバッグしやすさを犠牲にしてパフォーマンスを改善する。
  • racket/unitはTyped Racketにおけるユニットの実験サポートを提供する。

RacketはLGPLライセンスで提供されている。設計目標の一つは、言語の創造・設計・実装のプラットフォームとして使われることだ。この言語はスクリプティング汎用プログラミング、コンピュータサイエンス教育、研究など様々な場面で使われている。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT

あなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。

Eメールを変更すると確認のメールが配信されます。

会社名:
役職:
組織規模:
国:
都道府県:
新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。