Erlang感想(その2)
Prolog由来だから、演算子順位文法(->や;などすべての構文要素が+や*のように演算子として扱われる文法)かと思ったら、if〜endとか、receive〜endとかがあるんだよね。これは演算子じゃ無いよなぁ、さすがに。
でも、演算子順位文法を捨てるなら、もう少し分かりやすいシンタックスにしてもいいのに、とも思う。この辺は初期の実装からのしがらみなのかなぁ?
あと、メッセージには未束縛の変数は渡せないんだよなぁ、多分。そうすると、プロセスから値をもらうためには、まずそのプロセスにメッセージを送って、その後自プロセスにメッセージを投げてもらうしか無い?ん〜、本当?すげーめんどくさいんですけど(^^;
それはともかく、並行言語としてErlangを見ると、もう少し洗練されてもいいかなと思う。Perlに対するRubyのように、概念を整理してセンスよくまとめた新しい言語が必要なのかも知れん。
まぁ、近い取り組みはすでにそれなりにあったんだとは思うけれど。