Extensible variant types

Extensible variant types とは OCaml の言語拡張のひとつで、後からコンストラクタを拡張できる性質を持ったバリアント型を定義できる。 型を宣言するときは .. を使う type color = .. バ...

2024/4/8

ファーストクラスモジュール

OCamlにはファーストクラスモジュール(第一級モジュール)という言語機能があり、関数の引数にモジュールを渡したりモジュールを戻り値にするこ...

2024/3/24

OCamlでモノイド

OCamlには型クラスはないが、ファンクターでそれっぽい雰囲気のものは作れそうだなと思ったので試してみた。 まずはモノイドを表すモジュール型を...

2024/3/20

Dreamのコードが良い感じ

ここ数日DreamというOcamlのWebフレームワークのコードを読んでいる。 ファーストクラスモジュールやファンクター、パラメーター満載のモ...

2024/1/16

gRPC 1.60.0がRuby 3.3.0 x86_64環境だとビルドできない

bundle install of grpc-1.60.0-x86_64-linux reports that it is incompatible with Ruby 3.3.0 during GitHub CI #35396 手元のM3 Macだと問題なくbundle installできたのでx86_64特有の問題っぽい。すでにIssu...

2024/1/6