Lispのメモ(個人用)

プログラマの端くれとしてLispを勉強したくなったので…。

導入

下調べし、勉強するLispの方言として、Schemeを選択した。実装はGaucheを選択。 自環境はArchLinuxだが、gaucheはextraレポジトリにあるためAURは不要。

ファイル拡張子は.scm。実行はgoshで行う。 scmファイルを選択しないときはgoshはシェルとしてふるまう。 抜けるためには(exit)と入力する。

基本的文法を学ぶ

とりあえず標準入出力がないと実用プログラムは始まらないので, Hello World! からやってみる。

出力命令は(print "Hello World!").そらそうだ。

で、文字列を変数に格納したい、となる。

(define x y),でyxに入れることができる。

面白いのは、yの中身は処理でもいい、ということ。

(define (hoge x)(* x 2))

とすれば、関数を自作できる。