関数を定義してみる
簡単な再帰を使った階乗。
gosh> (define (fac n) (if (= n 1) 1 (* n (fac (- n 1))))) fac gosh> (fac 5) 120 gosh> (fac 8) 40320
ふむふむ。括弧が最後にたくさんついて数を数えるのが大変。
インタラクティブモードでのgoshも、Emacsに付属のscheme-modeも、閉じ括弧入力時に対応する括弧をフォーカスしてくれなかった。
何かいいモードないかな。
追記
対応する括弧を教えてくれるには以下の記述を追加すればよいらしい。
;; 直前/直後の括弧に対応する括弧を光らせます。
Karetta|Gaucheプログラミング(立読み版)|Emacsの設定
(show-paren-mode)
上手く動いてちょっと満足。他の設定も参考にしてみる。