1. Gnu Common Lispインタープリタのインストール

2013年初版
2014年7月14日2版

以下では,実行環境として,Windows Platformを仮定しています.他のプラットフォームへのインストールについては,Gnu Common Lispサイトを参照してください.
1. Gnu Common Lisp処理系のインストール
次の手順に従います.

  1. Gnu Common Lispサイト(http://www.gnu.org/software/gcl/)に行く.
  2. 左コラムの”Menu”>”Get Latest Release”リンクをたどる.
    → ftp://ftp.gnu.org/pub/gnu/gcl
  3. 「gcl_2.6.7.mingw32_cltl1_japi_20080106.exe 08/01/15 0:00:00 」をダウンロード.
    ※手元のWindows 8.1マシンでは2.6.8以降のバージョンではうまく動かない.2.6.8では,backspaceキーで意図したとおりに文字が消えない.2.6.9では,gclが起動しなかった. (2014年7月11日)
    インストーラの実行を完了すると,いきなり次のようなコンソールが表示される.


    これは,Lispリスナーと呼ばれるLispインタプリタの入力待ち状態であり,Lispを使ったことがある人なら,「あっ,もうLispインタープリタが動いた!」とわかる.
  4. インストールの検証:Gnu Common Lisp(以下,gcl)はインタープリタであり,このコンソールからコマンドを入れると,対応する処理を行い,その結果をコンソールに表示する,というサイクルを繰り返すことになる.コマンドの中には,「関数」(ないしは,新しいコマンド)の実行だけでなく,新しい関数を定義したり,ファイル入出力を行ったりするものがある.gclを終了するには,(bye)+Enterとするか,もっと乱暴に^c「コントロール-c」でもよい.

2. Emacsエディタのインストール
Gnu Emacsのホームページ
http://www.gnu.org/software/emacs/
の説明に従って,ダウンロード,解凍すると,bin, etc, info, leim, lispなどが入ったフォルダが得られるので,それをそのままProgram Filesにもっていき,binフォルダ内のrunemacs.exeへのショートカットを作るだけで,即起動.
環境変数HOMEの指しているディレクトリに.emacsファイル(テキストファイル)を作り,
(set-variable ‘inferior-lisp-program  “C:/Progra~1/GCL-2.6.7-CLtL1/bin/gcl1.bat”)
(autoload ‘fi:common-lisp “fi-site-init” “” t)
と入れておくことで, M-x run-lispによって,前項で導入したgclを実行できる.※ただし,2014年7月12日現在のGCL-2.6.7-CLtL1中のgcl1.batにはバグがあり,.exeファイル名がsaved_CLTL1_gcl.exeとなっているので,これをsaved_gcl.exeと修正する必要があります.

    3. Lispのソースファイル拡張子の設定
    Lispのソースファイルのための拡張子を決め,その拡張子のファイルの実行をするためには,テキストエディタを使うことをWindows上で設定します.以下では,.lspを拡張子を使うことにしましょう.適当なファイル ― 例えば,test.lsp ― を作り,そのプロパーティを開いて対応づけられているプログラムを「メモ帳」にします.
    ビギナーの方は,《ここ》からtest.lspをダウンロードし,プロパティが《こんな風》になるように設定してください.
    4. おわりに
    以上で,gcl+Emacsのインストールは終了です.
    Emacsをインストールしてない方は,コマンドでgclアプリを選べばgcl処理系で述べたインタープリタが立ち上がります.そのread-eval-printループを使って実行をします.適当なエディタ(テキストエディタなど)でプログラムを編集して,gclに読み込ませます.
    Emacsをインストールした方は,コマンドでアプリを選べばEmacsが立ち上がります.そのなかでM-x run-lispを実行すると,エディタのバッファにgclの入出力が表示されます.ウィンドウを2分割して,一つのウィンドウに実行画面を表示し,もう一つのウィンドウにソースファイルを表示しながらプログラム開発と試験をすすめることができます.
    補遺
    Meadow処理系(日本語が使えるので便利だが2014年7月13日現在接続できず)
    コンソールからは使いにくいので,emacsエディタからgclを呼び出せるようにします.Meadowは当初Windows向けのGNU Emacsを多言語拡張をすることを目的に開発されたテキストエディタですが,省略して,ファイルを普通のテキストエディタで編集し,コンソールからファイルを読み込むことでも演習はできます.

    1. Meadowのホームページ:
      http://www.meadowy.org/meadow/
      からMeadow処理系をインストールします.
    2. 環境変数HOMEに.emacsなど処理系パラメータを置く場所(ディレクトリ)を指定します.
    3. .emacsファイルを作成して,前項の場所に置きます..emacsという名前がなく拡張子だけのファイル名をもつファイルはUnix系ではよく用いられます.例えば,meadowで新規ファイルを作成してセーブすることによって生成できます..emacsファイルの内容は,
      (set-variable ‘inferior-lisp-program  “C:/Progra~1/GCL-2.6.7-ANSI/bin/gcl1.bat”)
      (set-language-environment “Japanese”)
      (autoload ‘fi:common-lisp “fi-site-init” “” t)
      とします.第1行目は,MeadowでM-x run-lispでgclを呼び出すためのもの.gclの実行プログラムは,gcl.batですが,.emacs埋め込み用にgcl1.batが用意されています.第2行目は,Meadowから送られる日本語コードとgclの期待している日本語コードを一致させるためのものです.

     
    6月7日に,上記の通りの作業をしたところ,gclコンソールが一瞬立ち上がるがすぐにエラーメッセージとともに消滅してしまうという報告があった.OSはWindows 7.それ以上の仔細はまだ不明.
    →6月9日午後に解決したという連絡をいただきました.「保存先のフォルダ」の指定の仕方を変えたらうまくいったとのことでした.