OCamlを始めてみる

#プログラミング

#OCaml

投稿日: 2021-03-13

OCaml を始めてみようと思い立った。のでなんとなくブログにメモしつつ始めてみる。

やっていき

実は以前 プログラミング in OCaml という本を買って途中まで読んで積んでいた。この本とネットの情報などを参考にやっていこうと思う。

積んだ理由としては、VSCode でいい感じに書けなかったから。(当時でも頑張ればできたのかもしれないがそこまでのモチベーションはなかった。) 今は VSCode でもいい感じに書けるらしいと聞いたのでリベンジしてみることにした。


ネット上で役に立ちそうな資料

日本語でまとまった資料がないかと探していたら 教科書 を発見した。プログラミング言語処理系のテキストだが、最初のほうに OCaml の入門関連のテキストがまとまっている。(プログラミング in OCaml の著者のテキストもあった)


環境構築

プログラミング in OCaml はどちらかというとプログラミング的な話がメインで、一応付録に処理系などのインストール方法は載っているものの少し内容が古い?のかOPAMについて書いてなかったりしたので、今回は 上記教科書にあったテキスト を参考に環境構築した。

何をやったか雑に箇条書きするとこんな感じ。

  • OPAMをインストール
  • OPAMの初期設定
  • ライブラリやツールのインストール(自分の場合 Vim も Emacs も使わないのでテキストに載っていたもののうちVim/Emacs関連のものは省略)

utop

テキストには載っていなかったが utop もインストールした。(ocaml デフォルトのものよりも賢いらしいREPL)

見た目がかっこいい。

ちなみに utop は quit ディレクティブ(#quit;;) または Control-D で終了できる。(Control-C では終了しない。)


VSCode

普段使っている VSCode でいい感じに書けるようするというのが今回最もやりたかったこと。

結論としては以下の手順でいい感じになった。

手順メモ

まず vscode-ocaml-platform を入れる。

OCaml-LSP が別で必要ということで入れる。

opam install ocaml-lsp-server

ついでに ocamlformat を入れる。

opam install ocamlformat

その上で、作業ディレクトリに空でよいので .ocamlformat というファイルを作ると VSCode のフォーマットコマンドでフォーマットできるようになった。

追記: .ocamlformat のオプションを自動補完してくれるVSCode拡張を作ったのでひっそりと宣伝しておく。


まだ本格的にコードを書いてないので今後何か問題にぶち当たるかもしれないが、とりあえず補完も効くしフォーマットもできるようになったので、これで快適に VSCode で書いていけそうと思う。今回の目的は達成としたい。第一部完!

その2を書いた。

Author

profile icon

тars (たーず)

tars0x9752

Japan, Tokyo

TypeScript

プログラミング, 音楽, Turntablism, Video Game, スノーボード, 味噌汁(特に赤味噌), 味噌煮込みうどん, 川魚(特に鮎)

Tags

#Contentful

#Domain

#Gandi

#Git

#GitHub

#KaTeX

#Linux

#Markdown

#Next.js

#Nix

#Nix Flakes

#NixOS

#OCaml

#PEG

#Phenyl

#React

#SVG

#Terminal

#Turntablism

#TypeScript

#VSCode

#Vercel

#WSL

#Windows

#Yarn

#Yoyo

#lsp

#npm

#sitemap

#アルゴリズム

#データ構造

#プログラミング

#携帯

#数学

#映画

#競技プログラミング

#雑記

#音楽