Version française
Home     About     Download     Resources     Contact us    
Browse thread
Module type of a structure returned by functor
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Vincent Aravantinos <vincent.aravantinos@g...>
Subject: Re: [Caml-list] Re: Module type of a structure returned by functor
Hi,

Le 26 avr. 10 à 18:33, Dawid Toton a écrit :

> I've found that I have more fundamental problem. What is the exact  
> meaning of the following line?
>
> module type Foo = functor (X:X) -> sig val foo : X.t end
>
> (1) Foo is not a functor, but it is a type of some functors that map  
> modules to modules
> (2) Foo is a mapping from modules to module types
>
> Currently I think that it (1) is true and (2) is false. Let me know  
> if I'm wrong.

You're right.

> It means that there is no easy way to get module type of what  
> results from functor application. I think that the solution is to  
> separately define signature of results of the functor and use "with  
> type" clauses to recreate all result module types that are needed.

That's exactly the way to go (BTW is it such a pain? maybe your "with  
type" is easily inferred but not easily written?)

> This is not very bad, but I'm still wondering if "module type of..."  
> of 3.12 will provide elegant solution for this.

I can't remember this point...

V.