(rontolisp) docs

ビルドとインストール

ビルド済みバイナリのダウンロード(推奨)

ビルド済みの native-image バイナリは GitHub のリリースページ で公開されています。即座に起動でき、JVM のインストールも不要です。お使いのプラットフォーム 向けのアセットを選び、実行権限を付与して、rontolisp という名前で PATH に配置してください。

macOS(Apple Silicon):

wget https://github.com/making/rontolisp/releases/download/0.1.0-SNAPSHOT/rontolisp-darwin-arm64
chmod +x rontolisp-darwin-arm64
sudo mv rontolisp-darwin-arm64 /usr/local/bin/rontolisp

Linux(x86-64):

wget https://github.com/making/rontolisp/releases/download/0.1.0-SNAPSHOT/rontolisp-linux-amd64
chmod +x rontolisp-linux-amd64
sudo mv rontolisp-linux-amd64 /usr/local/bin/rontolisp

Linux(ARM64):

wget https://github.com/making/rontolisp/releases/download/0.1.0-SNAPSHOT/rontolisp-linux-arm64
chmod +x rontolisp-linux-arm64
sudo mv rontolisp-linux-arm64 /usr/local/bin/rontolisp

インストールを確認します。

rontolisp --version

ビルド済みバイナリは他に何もインストールする必要はありません。.wasm 出力を実行するには、 wasmtime 14 以降のような wasm-GC 対応ランタイムが追加で必要です (オプション)。

このドキュメントの残りの部分では rontolisp コマンドを使用します。代わりにソースから ビルドする場合(以下参照)は、rontolispjava -jar target/rontolisp-0.1.0-SNAPSHOT-exec.jar に置き換えてください。

実行可能 JAR のダウンロード

同じリリースページでは、 すべての依存関係を含む実行可能 JAR(rontolisp-0.1.0-SNAPSHOT-exec.jar)も公開されています。 Java 25 以降のランタイムが必要ですが、どのプラットフォームでも動作します。また、JVM 専用の java: 連携パッケージインタプリタ実行できる唯一の 成果物です。ネイティブバイナリはリフレクションのメタデータを持たないため、java: フォームのインタプリタ実行はそこでは失敗します (どちらの成果物でも java: プログラムを .class にコンパイルして java で実行することは可能です)。

wget https://github.com/making/rontolisp/releases/download/0.1.0-SNAPSHOT/rontolisp-0.1.0-SNAPSHOT-exec.jar
java -jar rontolisp-0.1.0-SNAPSHOT-exec.jar --version

ソースからのビルド

Java 25 以降が必要です。

./mvnw clean package

これにより、すべての依存関係を含む実行可能 JAR である target/rontolisp-0.1.0-SNAPSHOT-exec.jar が生成されます。 java -jar target/rontolisp-0.1.0-SNAPSHOT-exec.jar で実行します。

ネイティブイメージ(GraalVM)

GraalVM を使ってネイティブ実行ファイルを自分でビルドします。

./mvnw -Pnative clean package

これにより、即座に起動するスタンドアロンのネイティブバイナリ target/rontolisp が生成されます。

要件:

  • GraalVM 25 以降(native-image ツールを含む)

使い方:

# REPL
rontolisp

# File interpretation
rontolisp program.lisp

# Compile to JVM bytecode
rontolisp hello.lisp -o Hello.class

# Compile to WASM
rontolisp hello.lisp -o hello.wasm