Kick start Programming OCaml
じつはあまり静的型付け言語はすきじゃなかったりする...おおおおおおおおお
MacOSX SnowLeopardに処理系を入れ,emacsをセットアップする.
インストール
OCamlの日本語ページからダウンロードできるパッケージを選択する.
ぼくはocaml-3.11.1を選択.
$ cd src
$ curl -O http://caml.inria.fr/pub/distrib/ocaml-3.11/ocaml-3.11.1.tar.gz
$ tar xvf ocaml-3.11.1.tar.gz
$ cd ocaml-3.11.1
$ ./configure
$ make world.opt
$ sudo make install
というかんじ.
$ ocaml
が実行できればおk.
emacsの設定
ocamlパッケージ付属のocaml-modeは使いづらいらしいのでTuaregModeを導入する.
$ cd site-lisp
$ curl -O http://www-rocq.inria.fr/~acohen/tuareg/mode/tuareg-mode-1.45.6.tar.gz
$ tar cvf tuareg-mode-1.45.6.tar.gz
$ cd tuareg-mode-1.45.6
で,とりあえず,中に入ってる.elファイルをコンパイルしようとしたんだけどエラーが出る.
ad-substitute-tree: Lisp nesting exceeds `max-lisp-eval-depth'
調べてみると,関数内での関数呼び出しの制限らしい.それを考慮して.emacsに項書き足す.
;; expand max-lisp-eval-depth (setq max-lisp-eval-depth 10000) ;; tuareg-mode (for ocaml) (push "/Users/yamaneko/.emacs.d/lisp/tuareg-mode-1.45.6" load-path) (autoload 'tuareg-mode "tuareg" "Major mode for editing Caml code" t) (add-to-list 'auto-mode-alist '("\\.ml$" . tuareg-mode))
で,これでbyte-compile-fileすると,sym-lock.el以外はなんとかコンパイルできる.うう...
とりあえず,これでプログラムを書ける状態になった.