[PL-sem-jr] answer to my ML question
Dave Herman
dherman at ccs.neu.edu
Fri Oct 27 15:20:24 EDT 2006
Xavier Leroy gives an explanation of SML's restriction:
http://groups.google.com/group/comp.lang.ml/tree/browse_frm/thread/e1e2bbb9cb25591c/83164e48fa60c535#doc_266106904b3d3708
The short story: it's actually sound to relax the "val rec" restriction
to allow the rhs to include syntactic functions, variable references,
constants, and constructor applications, since none of these have side
effects. However, at least back in the day, it was considered very hard
to prove this sound. (My guess: this was before the popularity of
proving type soundness via operational semantics.) Apparently OCaml
relaxes the restriction, but SML is stuck in the dark ages. :(
Dave
More information about the Pl-sem-jr
mailing list