[
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: | -- (:) |
| From: | Simon Helsen <helsen@i...> |
| Subject: | Re: polymorphic recursion |
> > I don't know why Caml allows more general type constraints, but it might > > be a good idea to follow SML on this matter (and I am interested to know > > if there are good reasons for not doing this) > > If we use it to get polymorphic recursion, there is a good reason to > do this. right, but there is no polymorphic recursion in Ocaml, is there? > Another problem is the scope of type variables in type > constraints. What's the meaning of > > let f (x : 'a) (y : 'a) = y;; > > We may need explicit Forall keywords to express type schemes in constraints. Indeed, this is a problem. Standard ML solves this by defining some explicit rules for free type variables (section 4.6 of the definition - p18) But, admitted, it's ugly and difficult. It would probably be better to forbid free variables in type constraints altogether. Simon ----------------------- Simon Helsen ------------------------ -- Wilhelm-Schickard-Institut fuer Informatik -- -- Arbeitsbereich Programmierung (PU) -- -- Universitaet Tuebingen, Germany -- ------------------------------------------------------------- -- http://www-pu.informatik.uni-tuebingen.de/users/helsen/ --