Proposal: Deprecate ExistentialQuantification

Stefan Holdermans stefan at cs.uu.nl
Sun Jun 28 06:47:28 EDT 2009


Niklas,

> I am opposed since
> a) it requires the addition of extra syntax to the language, and
> b) we have another, better, way to do it.
>
> Somewhat pointed, I don't think the C++ way of putting all imaginable
> ways to do the same thing into the language is a sound design
> principle. If we have two ways to do the same thing, and one of them
> is considered prefered, then I see no reason at all to keep the other
> around. What I'm arguing here is that the GADT style syntax is truly
> preferable, and thus the other should be removed.

I agree. But ;-) since it's obvious not possible to get rid of the  
classic syntax completely, I see no harm in having it support  
existentials and GADTs as well. In an ideal word, in which there  
wasn't a single Haskell program written yet, I'd indeed like to throw  
the classic syntax out altogether.

Cheers,

   Stefan

On Jun 28, 2009, at 12:32 PM, Niklas Broberg wrote:

>>> In other words, in your 2x3 grid of syntactic x expressiveness, I  
>>> want
>>> the two points corresponding to classic syntax x {existential
>>> quantification, GADTs} to be removed from the language. My second
>>> semi-proposal also makes each of the three points corresponding to  
>>> the
>>> new cool syntax a separate extension.
>>
>> I see, but why are you opposed to have the classic syntax still  
>> support
>> existentials (though foralls) and GADTs (through equality  
>> constraints). I
>> would make sense to me to keep this support around.
>
> I am opposed since
> a) it requires the addition of extra syntax to the language, and
> b) we have another, better, way to do it.
>
> Somewhat pointed, I don't think the C++ way of putting all imaginable
> ways to do the same thing into the language is a sound design
> principle. If we have two ways to do the same thing, and one of them
> is considered prefered, then I see no reason at all to keep the other
> around. What I'm arguing here is that the GADT style syntax is truly
> preferable, and thus the other should be removed.
>
> Cheers,
>
> /Niklas



More information about the Haskell-prime mailing list