The Ruby Programming Language の演算子に関するセクションを読んで、演算子の結合性について考えさせられました。ちなみに、これは Ruby に関する質問ではありません。すべての言語に当てはまります。
オペレーターがどちらかの方法で関連付ける必要があることはわかっています。場合によっては、ある方法が他の方法よりも望ましい理由はわかりますが、全体像を見るのに苦労しています。言語設計者が何を左から右、何を右から左にするかを決定するために使用する基準はありますか? それが他の方法よりも一方向であることが「理にかなっている」場合と、それが単なる恣意的な決定である場合がありますか? それとも、これらすべての背後にある壮大な設計がありますか?