2011-04-19
■ [scheme] R7RSの最初のドラフトが公開された
twitterでちょっと話題になっていたこれ。
- http://trac.sacrideo.us/wg/attachment/wiki/WikiStart/r7rs-draft-1.pdf (このページからDownloadをクリック)
Schemeの言語仕様の第7版、R7RSの最初のドラフトである。R7RSは、(Schemeにしては)大きくなりすぎたR6RSの反省を受けて、 コア部分の「Small Scheme」を定義するWorking Group 1と、ライブラリまで含めた「Large Scheme」を定義するWorking Group 2に分かれている。今回のドラフトはWG1のSmall Schemeの方。
まだちゃんと読んでないけど、R5RSをベースに、モジュール・例外・レコード型などが追加された感じか。
- レコード型はR6RSのやつより小さい仕様。サブセットかも。
- syntax-caseは入ってなかった。
- parameterizeが入った。
- 新しいデータ型としてblob (バイナリデータ) が入ってる。
- R6RSで「R5RS互換ライブラリ」に追いやられたdelayとforceが復活してるw
2008年にこんなことを書いたのですが、以外と動きが速くてピンチですね。
あとjsSchemeはR5RSベースですが、BiwaSchemeはR6RS準拠を目指しています。 目標時期は「R7RSが策定されるより前」とされています。
[Route 477 - BiwaSchemeより引用]
しかしWG2の方はなんかまだまだかかりそうに見えます。ていうか、ThreadとかGettextとかUDPとかやりたい放題だなおまえら!