LoginSignup
36
37

More than 5 years have passed since last update.

OCamlを始める

Last updated at Posted at 2014-11-26

OCamlの環境を構築する際のメモです。

ちなみに、私の環境は、

OS : Mac OS 10.9

インストール

OCaml

以下の本家サイトにインストール方法があります。

rlwrap

rlwrapもインストールしましょう。
rlwrapは、ターミナルよりocamlシェルにいるときに、← ↑ → ↓などのキー入力ができるようにします。(これがないとこれらのキー入力をしても文字化けした内容が表示されるだけでした。)

rlwrap ocaml

ocamlを実行するときは上記のようにします。

alias ocaml="rlwrap ocaml"

と、上記のようにするととても便利です。

日本語の設定

設定内容は同じですが、設定を記述したファイルを実行時に渡す方法と、設定ファイルに予め記述しておく方法がありました。もちろん後者が楽だと思います。

1."ocaml -init" で設定ファイルを渡す

【設定ファイルの内容】

let printer ppf = Format.fprintf ppf "\"%s\"";;
#install_printer printer

上記をファイルにして起動時に呼び出す

ocaml -init ocaml_utf8.ml

2.ホームディレクトリの設定ファイル ".ocamlinit" に記述して起動時に読み込ませる。

$ cat .ocamlinit 
let printer ppf = Format.fprintf ppf "\"%s\"";;
#install_printer printer

【注意】設定内容2行目の#は必要です。

基本の基本

開始

$ ocaml
# 

終了

これがないと終わられへん。

exit 0;;

(* or *)

#quit;;
行の終わり
;;

コメント

上に出てきましたが、ocamlのコメントは

(* コメント *)

になります。

ファイルの読み込み

プログラムを記述した.mlファイルを読み込ませるには以下のようにします。

#use "file.ml";;

(ここでも先頭の#は必要です。入力は#から;;までです。)

基本

文字列

文字列はダブルクォーテーションで括ります。シングルクォーテーションだとエラーになります。

let str="wow";;

    

付録

AtomでOCaml

2017/04/08 追記 ====>
以下で使用する「Ocamltop HTML」は現在メンテナンスされておらず正常に動作しませんでした。
AtomでOcamlを使う場合はRepl (https://atom.io/packages/repl) を使うのがよいようです。
(私は試せていません。すみません。)

【参照】
https://github.com/etouss/atom-OcamlTopLevel/issues/2

なお、nnabeyangさんがご指摘くださいました。
ありがとうございました。
2017/04/08 追記 <====

GitHub製エディタ - Atom と拡張パッケージを使えば、シンタックスハイライトだけでなくOCamlで書かれたソースコードの実行・結果確認もできるようになります。

【インストールが必要なもの (OCaml周り)】
1. ocaml
2. opam (ocamlのパッケージ管理)
3. caml2html (2を使ってインストール)

opamの更新とcaml2htmlのインストール

ターミナルより以下のコマンドをそれぞれ実行しました。

opam init

opam update

opam upgrade

opam install caml2html

Atomパッケージのインストール

Atomで以下のパッケージを探してインストールします。

  1. Language Ocaml
  2. Ocamltop H T M L (https://github.com/tekdreamer/atom-OcamlTopLevel)

使い方

.mlファイルを開いてctrl + iを押すと、右に実行結果が表示されます。

ただし、日本語はそのままだとちゃんと表示できませんでした。
とりあえず、ソースコードの先頭に前出の日本語設定を入れるとちゃんと表示はできました。

対応方法:以下をソースコードの先頭に入れる。

let printer ppf = Format.fprintf ppf "\"%s\"";;
#install_printer printer;;
36
37
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
37