(rontolisp) docs

Clojure(実験的)

実験的。 rontolisp は Clojure の小さなサブセットを読みます -- どのバックエンド上でも Clojure 型のプログラムが動く十分な大きさです。準拠は設計上部分的で、ここにあるものは サブセットや互換性の保証ではありません。JVM や WebAssembly 上で Clojure 型のプログラムを 試すために使ってください。ずっと動かし続けたいものは Common Lisp で書いてください。 interop はインタプリタと JVM でのみ動きます:wasm バックエッドは低下先の java: サーフェスを拒否します。

.clj ファイルは Clojure として読まれます。それ以外の拡張子では --source-language clojure がその旨を示します。言語はファイルごとに選ばれるので、 1 つのプログラムで両方を混在できます。

rontolisp hello.clj                                # インタプリタ
rontolisp hello.clj -o Hello.class && java Hello   # JVM
rontolisp hello.clj -o hello.wasm && wasmtime run hello.wasm
rontolisp hello.clj -o hello-c.wasm --component && wasmtime run hello-c.wasm
rontolisp prog.txt --source-language clojure       # 任意の拡張子

--no-gc は名前で拒否されます:そのバックエッドにはペアもシンボルもクロージャもないからです。

対応表面の名前ごとのページがリファレンスです:シーケンシャル分割束縛とマップ 分割束縛付きの核となる束縛・制御フォーム、スレッディングマクロ、すべてのコレクションの strict なリストビュー上で動く seq 群、equal ハッシュテーブル上の永続 map・set 操作、 数値と述語のコア、atom と volatile、階層付き multimethod、ex-info 付きの try/catch/finally、ファイルをまたぐ名前空間(プロジェクトのファイルの ns/require)と clojure.string、clojure.set、集計ランナー付きの clojure.test、そして Java interop。 各フォームが何に低下するか、何が拒否されるかはセマンティクス、リーダの規則は 構文、オラクルとの差異は仕様との差異にあります。

このセクション

ページ内容
REPLclojure> REPL
構文リーダ:リテラル、文字、基数整数、キーワード
セマンティクス低下対応表。拒否されるフォーム
仕様との差異Clojure との動作の差異
リファレンス対応名ごとのページ