プログラミング言語の表層構文を見ていると、「自然言語(特に英語)に寄せたかったのかな」と思わされる語順を時々見かけます。例えば、Pythonの from somemod import a, b
という語順は英語として自然に読めることを意識していると思われます。
こういう設計の背後には「自然言語のように読める構文が良い構文だ」という暗黙の仮定があるように思えます。しかし、それは正しいのでしょうか?
この記事では、いくつかの例を元に、プログラミング言語の構文の「合理性」はどのような基準で測られるべきなのかを考えます。筆者の主観(感覚)に基づく基準もあり、普遍的な基準を作成することを目指しているわけではありません。「それはお前がそう思っているだけなのでは?」と思われる部分もあるかもしれません。仮説、あるいは議論の材料の提示と思っていただくのが良いかもしれません。
続きを読む