web-dev-qa-db-ja.com

2016年の時点で、R7RS(小)の100%を逸脱なしでサポートするSchemeの実装はありますか?

Schemeを学びたいと思っています。 R7RSは最後の規格なので固執したいです。ただし、Schemeの現在の実装には多くの断片化があり、それらのほとんどはR5RSまたはR6RSの一部に留まっているようです。

R7RSの一部をサポートしているのはKawaだけですが、JVM上で実行されるため、末尾呼び出しの最適化はサポートされていません。これは、この実装の強力な点です。

Schemeの世界は本当に断片化していて、R7RSの完全な実装さえまだないのですか?ない場合は、追いついたらすぐに作成するつもりです。しかし、それが存在する場合は、ホイールを再発明せずに、その特定の実装に貢献する方がよいでしょう。

情報があれば、名前だけでなく、適切な詳細情報も含めて回答していただければ幸いです(実装の公式Webサイト、またはメーリンググループからの抜粋も参考になります)。

ちなみに、私はラケットを検討していません。これは、もはやスキームではないからです。

23

R7RS Small Language( " Working Group 1 ")委員会のAlex Shinn委員長は、標準が発展するにつれて Chibi Scheme を作成しました。完全に準拠していると思います。バイトコードコンパイラです。

Larceny は、ほぼ(完全に?)準拠のR7RSモードを備えており、マシンコードにコンパイルされます。

私は Picrin で遊んでいます。これはR7RSコンプライアンスを目的としており、非常に近いです。バイトコードコンパイラです。

A 実装のリスト は、委員会のwikiでR7RSへの準拠を目指しています。

  • ちび
  • 鶏肉(部分)
  • Foment
  • ゴーシュ
  • ガイル(部分的)
  • カワ
  • 窃盗
  • モッシュ(部分的)
  • ピクリン
  • 射手座
23
Doug Currie

質問では、RacketはSchemeではないため、検討対象から明示的に除外されていますが、R7Rを小さく実装する Racketパッケージ "R7RS" を指摘します。

プロジェクトのページに記載されているいくつかの小さな非互換性があります。

7
boskom