「不便」は長所だ。

http://www.4gamer.net/games/076/G007660/20090123016/で連想。
GPGPUと呼ぶと特殊なものに聞こえるけれど、ベクター演算に特化したコプロセッサと呼ぶと普通のものに聞こえる。その場合、コスト・パフォーマンスが最大の長所だ。
本来は特定用途専用として開発されたものが自由度を高めているうちに汎用に使えるようになった、という例の一つだろう*1。このようなものでは元々の用途の癖が強く汎用品として使うには不便なことが多い。だからといって汎用品として再設計したものは、既に普及している、元専用品とのシェア争いに敗れて普及しない。
たぶん、学習曲線の問題なのだと思う。初心者にとっては「不便」なくらいのツールの方が学習コストが小さいので良い。「上級者」にとっては今までに積み上げたコストが大きいので離れられない。

*1:Perlなど、プログラミング言語でも似たような例は多い

左再帰

PEGは左再帰ができない。Wikipediaにも載っている程度の常識的な話だ。
でも、それは本当なのかちょっと疑わしいような気がしてきた。あくまでも実装上の都合にすぎないのではないか、と。もう少し考えを整理する必要はあるけどもたぶん実装できる。
再帰に自動変換するという話ではない、念のため。