Version française
Home     About     Download     Resources     Contact us    
Browse thread
Making a polymorphic type non-polymorphic to comply with original signature
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Hugo Ferreira <hmf@i...>
Subject: Re: [Caml-list] Making a polymorphic type non-polymorphic to comply with original signature
David Teller wrote:
> It's probably feasible without copy & paste by building a functor on top
> of the defunctorized hashtable in Batteries. Or by just using the
> defunctorized hashtable of Batteries directly, although it's not as safe
> as the functorized version, due to the absence of existential types.
> 

If I understand you correctly I would have to redefine equivalents for:
- HashedType
- S
- Make(H: HashedType)

Basically copy & paste these and change the type.
Doable although not to my liking.

TIA,
Hugo F.


> Cheers,
>  David
> 
> On Tue, 2009-01-20 at 12:24 +0100, Daniel Bünzli wrote:
>> Le 20 janv. 09 à 11:59, Hugo Ferreira a écrit :
>>
>>> Is it possible to make H comply with Hashtbl.HashedType i.e: make
>>> J.Key = 'a H.node ?
>> This issue is well known (e.g. see here [1]). Your are running into  
>> limitations of the standard library. The only unsatisfying answer is  
>> to copy the code from the standard library and add the parameter  
>> yourself.
>>
>> Best,
>>
>> Daniel
>>
>> [1] http://groups.google.com/group/fa.caml/browse_thread/thread/f2acb593da91553c?hl=fr&ie=UTF-8&q=type+var+in+functor+fa.caml
>>
>> ____________________________________________ugs
>>