プログラミングGauche 1章〜5章

プログラミングGauche

プログラミングGauche

SICP Lite #5 × 第1回チキチキ もっと素人臭いSICP読書会 in Java-ja : ATNDで副読本として書かれていたので読み始めてみた。Gauche以前にEmacsにやられそう。でもいい機会なのでEmacsでやっていこう。

1章 LispとSchema

lamda式ってなんだろう?後で出てくるらしい。

4章 Gaucheの開発スタイル

用語
  • 読み書き不変性(read/write invariance)
    出力(書き込み)時に読み込み可能な形式で出力すること。
  • 束縛(bind)
    変数名に値を設定すること。要は代入。
Gauchebox

GaucheWindows用の開発環境。GaucheMeadowがセットで提供されている*1。ちなみに、Gauchebox-0.8.14-box1.exeをインストールした。デスクトップとスタートメニューにショートカットが作成される。.emacsファイルもWindows用に設定済みのためそのまま使える。ただし、Gaucheのファイルを半角空白が含まれるパスに置くとFileNotFoundとなるため、Meadowのショートカットのプロパティの作業ディレクトリを半角空白の含まれない適当なパスにした方が楽(C:\Gauche とか)。

プログラムの作成手順
  1. Meadow起動
  2. *scheme*バッファ起動 C-c s
    • これは好みで。C-c C-z で表示することも出来るし、結果だけなら一番下のエリアに表示される。
  3. ファイルの読み込み C-x C-f
  4. プログラム記述
  5. テスト C-c C-l RET

C-x C-e は直前のS式しか読み込まないため、部分的にテストするには使えるが、プログラム全体のテストには使えない。なのでプログラミングGaucheに書かれてる手順は微妙に使いづらい気がした。使い込むと便利になるのかな。

ショートカット

S式単位で移動するショートカットが色々ある。慣れると便利そうだが、暫くかかりそう。S式単位で選択するショートカットが存在し、コピペは以下の感じ。Emacsに慣れていないため理解するのに時間がかかった。。あと、改行時のインデントは C-j で、S式単位で一括してインデントを修正する場合は M-C-\ 。しばらくEmacs クイックリファレンスが手放せないな。

  • コピペ
    1. S式選択 M-C-SPC
    2. コピー M-w (切り取りは C-w )
    3. ペースト C-y