[Haskell-cafe] Re: (kein Betreff)

Janis Voigtländer jv at informatik.uni-bonn.de
Tue Aug 3 03:22:48 EDT 2010


Stefan Holdermans wrote:
>> The point of this discussion is that the Eval constraint needs to be 
>> on one
>> of the functions.  So I tried to specify that (x -> Int) and (y -> 
>> Int) are
>> different types despite x and y being the same type, because one of 
>> them has
>> an Eval constraint.  This may be a shortcoming of Haskell (or System Fc?)
>> types, although it may be doable with a newtype.
> 
> That was kind of what my thinking out loud was getting at. If you want x
> -> Int and y -> Int to be different types even if x and y actually are
> the same type, then apparently you want x -> Int and y -> Int to be
> built from different function-space constructors, say -> and ->*,
> yielding x -> Int and y ->* Int. Replacing equals for equals again, you
> get x -> Int and x ->* Int. So, basically, we are annotating function
> types, what is IIRC exactly what Janis and David are doing. (I hope
> Janis corrects me if I'm wrong here).

Wrong only in that David's name is Daniel. :-)

Other than that, I agree.

Best,
Janis.

-- 
Jun.-Prof. Dr. Janis Voigtländer
http://www.iai.uni-bonn.de/~jv/
mailto:jv at iai.uni-bonn.de



More information about the Haskell-Cafe mailing list