CamlP4 sucks
CamlP4 が嫌いだ:
- 他のツール群が全て ocaml○○ にもかかわらず、p4 は camlp4○○。3.09の時はもっとひどかった。ocpp とかなんですか?
- camlp4{o,of,oof,orf,r,rf} いい加減にしてほしい。ちなみに ocamlprof は名前は似ているが全く別のツール。
- revised syntax。全ての混乱の元
- original syntax も元のに似ているようで、100% コンパチではない(その上バグがある)
- そもそもオリジナルと parser algorithm が違うので、CamlP4 の syntax error を理解しなおさなければならない。
- たかが parser 拡張するだけなのに勉強すること多すぎ。3.10でまた一からやりなおし。
- cpp や M4 で書けるようなことを、わざわざ CamlP4 で作る風潮がある。
- 実装が 3.10 になって新しくなったため、CamlP4 を使った拡張は全て書き直し。その上、3.10 になってからもころころと内部が変わっているので CVS version のコンパイラでは 3.10 で使えるはずの拡張も修正無しでは使えないことが多い。
- ほとんど使わないツールにもかかわらずビルド時間だけは異様に取る
- ocamlbuild とかいう腐れツールとタッグを組んだおかげでさらに時間がかかる
- 使いもしないツールなのに、コンパイラを改造すると CamlP4 と ocamlbuild も修正を迫られる。
- camlp4 と camlp5 があるが、ある超絶的に詰まらない理由により camlp5 は OCaml には採用されることはない。洋の東西を問わず人間関係は重要だね、という話だ。
- campl4 と何故かミスタイプすることが多い。これは言いがかりだね。
OCaml プログラムを書くことでプログラマブルに parser や parse tree を変えることができるというアイデア自体は大歓迎なのだが、なぜここまで複雑にしなければならないのか理解できない。