[Haskell-cafe] Existential quantification problem

Derek Elkins derek.a.elkins at gmail.com
Sun Jul 13 19:28:10 EDT 2008


On Thu, 2008-07-10 at 10:59 -0700, Jonathan Cast wrote:
> On Thu, 2008-07-10 at 14:53 -0300, Marco Túlio Gontijo e Silva wrote:
> > Hello,
> > 
> > how do I unbox a existential quantificated data type?
> 
> You can't.  You have to use case analysis:
> 
>   case foo of
>     L l -> <whatever you wanted to do>
> 
> where none of the information your case analysis discovers about the
> actual type of l can be made available outside of the scope of the case
> expression.  (It can't `escape').  This is required for decidable static
> typing, IIRC.

It's not an extraneous requirement; it is part of the definition of
existential types.



More information about the Haskell-Cafe mailing list