あけましておめでとうございます、びしょ~じょです。 これは言語実装Advent Calendar2022 17日目の記事です。 諸事情ありましたが端的に申し上げると私の怠慢で大幅に投稿日が遅れました。 1. はじめに OCaml 5.0が去年末にリリースされた。 並列処理のプリミティブに加え、algebraic effectsを用いた並行処理も書けるようになり、これはとても素晴らしいことですよ。 本日はOCaml 5.0のベースとなるMulticore OCamlにおけるalgebraic effectsの実装論文『Retrofitting Effect Handlers onto OCaml』[1]について解説する。 該当論文ではeffect handlersの実装デザインにあたって以下の4つを考慮している: Backward compatibility 存のコード資産に(表層構文はもち
![Retrofitting Effect Handlers onto OCaml](https://cdn-ak-scissors.b.st-hatena.com/image/square/c86074345df5a2ee50694fac49d51c4317a01bbf/height=288;version=1;width=512/https%3A%2F%2Fnymphium.github.io%2Fpictures%2Fgithub_icon.png)