09845358cadeb263731538ce5edc8bf19dd159c7 — Evan Bergeron 4 months ago 8fc107d
note on datatypes
1 files changed, 8 insertions(+), 0 deletions(-)

A notes/datatypes.org
A notes/datatypes.org => notes/datatypes.org +8 -0
@@ 0,0 1,8 @@
SML 90 got local datatype declarations a bit wrong -
let datatype t = C in C end
was legal, but is not in SML 97.

SML 97 disallows C to escape the scope. This is similar to the
type-checking for existential packages - that plus the generativity of
`use` (`use` declares a type var) may be why we want to elaborate to
existential packges.