web-dev-qa-db-ja.com

LISPファイルを簡単に「実行」するにはどうすればよいですか

Python

Pythonを学習したとき、Nice guiインストーラーを使用してWindowsにインストールすると、すべての.pyファイルがコマンドラインまたはエクスプローラーからPythonで自動的に実行されます。

プレーンテキストファイルをすぐに作成して実行できるため、これは非常に直感的で簡単であることがわかりました。

[〜#〜] lisp [〜#〜]

私はLISPを学び始めており、(レビューから)SBCLは悪いLISP実装ではないと判断しました。

Pythonと同じくらい簡単に.LISPファイルを実行するようにSBCLを設定する方法はありますか?

これを持っている他のLISP実装はありますか?

29
AnnanFay

実行可能ファイル

Greg Harmanが言及しているように(:EXECUTABLEキーワードを参照)、SBCLは実行可能イメージを保存できます: http://www.sbcl.org/manual/index.html#Saving-a-Core-Image

スクリプト

LISPファイルはスクリプトとして実行できます。以下を参照してください。 http://www.sbcl.org/manual/#Shebang-Scripts

コマンドラインオプション

SBCLには、起動時にLISPコードを評価/ロードするためのコマンドラインオプションがあります: http://www.sbcl.org/manual/#Command-Line-Options

[〜#〜]スライム[〜#〜]

[〜#〜] slime [〜#〜] はCommonLISP用のEmacsインターフェースです。 Emacs内からSLIME経由でSBCLを使用できます。多くの人は、典型的なシェルインターフェースよりもEmacsLISPリスナーを好みます。

ほとんどのCommonLISP実装には、同様の機能があります。詳細については、マニュアルを参照するか、ここで特定の実装について質問してください。

23
Rainer Joswig

数分前、誰かが私が探していたものに近い答えで答えました。

http://www.sbcl.org/manual/Shebang-Scripts.html にリンクされた返信は、私の解決策を理解するのに大いに役立ちました。私がそれを正しいとマークしようとしていたので、誰でも彼らの答えを削除するべきではありませんでした;)

私の最終的な解決策は、.LISPファイルを開くプログラムとして通常のプログラムファイルの関連付けを介してリンクされるバッチスクリプトを作成することでした([ファイル]-> [プロパティ]-> [プログラムから開く]-> [変更]を右クリック)。

@ECHO OFF
"C:\Program Files\Steel Bank Common LISP\1.0.37\sbcl.exe" --script %1

Explorerでファイルをダブルクリックすると実行され、コマンドラインで実行すると同じように実行されます。

8
Annan

SBCLは、実行可能なコアイメージを sb-ext:save-LISP-and-die を介して保存できます。

2
G__

SBCLインタープリターを既にダウンロードしてインストールしている場合は、コマンドラインにプログラムを入力するだけでプログラムを実行するには、インタープリターの場所をシステムのPATH変数に追加して、マシンがどこを見ればよいかを認識できるようにする必要があります。

これはどの言語にも当てはまります。 Pythonインストーラーが行ったことは、Pythonインタープリターの場所をPATH環境変数に追加することでした。

プラットフォームに応じて、環境変数の設定方法についてGoogleで簡単に検索してください。

1
Zachary Wright