OCamlとStandard MLにおけるletのインデント
反応が良いので調子に乗って、どうでもよい話を続けてみる。OCamlでは
if shortexp1 then shortexp2 else blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
に比べても
let x = shortexp in blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
は遥かに広まっていると思われるが、Standard MLではletにendが必要なので、たとえば
let val x = shortexp in blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah end
のようになって、コードが右寄りになりやすい(複数の宣言は1つのletに連続して記述できるが)。SML/NJやMLtonのソースコードを読んでいると特によくわかる。LispないしSchemeも同じかもしれない(同じくlet*はあるが)。みんなどうしてるんだろう。10行以上になったら関数をわける?