caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] New GADT iteration
@ 2011-11-11  7:57 Jacques Garrigue
  2011-11-11  8:24 ` Gabriel Kerneis
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Jacques Garrigue @ 2011-11-11  7:57 UTC (permalink / raw)
  To: caml-list

Dear Camlers,

Some of you may already be aware that GADTs are available in trunk,
since this summer. Information is available here:
      https://sites.google.com/site/ocamlgadt/

As you can see in the presentation, this first iteration had some
limitations (particularly it was mostly incompatible with objects and
polymorphic variants), which led us to try a new approach.

In this new iteration it is guaranteed that an ambiguous type cannot
escape the scope of a GADT pattern-matching, which leads to
(hopefully) more intuitive type inference, and allows to combine GADTs
with objects and polymorphic variants. The syntax is unchanged.

As this approach depends crucially on the above property of ambiguous
types not escaping, it requires as much testing as possible.
This is why I would like to invite interested people to test it and
report strange behavior.
The new code is in the branch  branches/gadts-devel, or
  http://caml.inria.fr/cgi-bin/viewcvs.cgi/ocaml/branches/gadts-devel/

Sample code is available in the subdirectory testsuite/tests/typing-gadts.
It includes Alain Frisch's example for safe type introspection,
extended with variants.

Please tell me if you find some unsoundness, or you cannot understand
why you get an error.

Jacques Garrigue

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-11-24  9:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-11  7:57 [Caml-list] New GADT iteration Jacques Garrigue
2011-11-11  8:24 ` Gabriel Kerneis
2011-11-11  8:44   ` Jacques Le Normand
2011-11-12 14:18 ` "Markus W. Weißmann"
2011-11-24  9:13 ` [Caml-list] " Jacques Garrigue

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).