Browse thread
Comparing two things of any two types, in pure OCaml
[
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: | 2006-09-14 (04:36) |
From: | brogoff <brogoff@s...> |
Subject: | Re: [Caml-list] Comparing two things of any two types, in pure OCaml |
On Sat, 9 Sep 2006, Jacques Garrigue wrote: > > Jacques Garrigue suggested using Obj.repr. He also wrote ``Type > > theoretician answer: What you would need to do that transparently > > inside the type system is generic functions with dynamics.'' and > > mentioned GADT. > > Small comment: By transparently I meant "without any type > annotation". Then I gave a solution using normal datatypes for > annotations, and polymorphic methods, and just mentioned that GADTs > were not useful in this case. Note that my solution cannot directly > use polymorphic variants, it uses non-regular types, and > polymorphic variants have to be regular. Is that to make type inference tractable? If so, any ideas on what amount of annotation would be needed to get around this? > This said, I love polymorphic variants anyway... I like them a lot, and I often wish there was a dual notion of polymorphic records in Caml as well. But now I wonder about the non-regular types issue you bring up; I guess it means that you need plain old sum types too if you wish to use them. -- Brian