let letpat = expr1 in expr2is equivalent to
match expr1 with letpat => expr2 endmatchThe let expression is, in effect, a prefix operator with the lowest precedence.
1: include "std"; 2: print (match 1 with | ?x => x + x endmatch); endl; 3: print (let ?z = 1 in z + z); endl; 4: print (let ?x = (let ?y = 2 in y + y) in x + x); endl; // 8 5: