Browse thread
Type constraints
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2004-12-08 (12:39) |
From: | Alain Frisch <Alain.Frisch@i...> |
Subject: | Re: [Caml-list] Type constraints |
Damien Doligez wrote: > Hmmm... Now I don't know whether it's safe or not, and I don't know > whether someone checked its safety before excluding it from the value > restriction code... With this extra line added to is_nonexpansive: | Texp_letmodule (_,_,e) -> is_nonexpansive e we get: # let module M = struct let x = ref [] end in M.x;; - : 'a list ref = {contents = []} The non-generalizable status has been forgotten. What I'm not sure is whether this is only an artefact of the internal representation of levels to control generalization, or whether there are some deeper issues. -- Alain