Haskell っぽい prelude.ml
prelude.ml は Haskell っぽいイディオムで OCaml プログラムを書くためのモジュールです。
使ってません。ざぁっと見てみました。
まぁそんな印象です。前者はいいと思うのですが、後者に関しては Haskellian にしか利点はないような。あまりに Haskell like を目指しているので、サブモジュールを全く使わず、全関数を一つモジュールに載っけています。無限の荒野の様です。prelude.ml の 9000行目辺り*1からひゅーっと風が吹き込んでくるような切なさを感じて、試すのを止めました。どうせなら OCaml と Haskell のいいとこ取りして欲しい。
ところで、
- let (@....) f g w x y z = f (g w x y z)
- let uncurry6 f (a,b,c,d,e,g) = f a b c d e g
こんなんわざわざ定義する意味あんの? 6-tuple なんてレコード定義するでしょう普通。
*1:unit テストがコメントとして書かれているから、長いのです。