Hello Henning,

Wednesday, February 6, 2008, 5:09:56 PM, you wrote:

>> > Is Haskell's type system including extensions strong enough for describing
>> > a function, that does not always return a trivial value? E.g.
>> >    (filter (\x -> x==1 && x==2))
>>
>> such things may be detected by (too) smart compiler, but in general
>> it's undecidable: filter (if LifeHasMeaning then const True else odd) ;)

> As I said, if the programmer could specify an input on the type level for
> which the output is non-trivial, then this would solve the problem.

it's another question: you can describe trivial values using type
system, but can't prohibit them using it - it's impossible because you
can't check for arbitrary algorithm whether it will be finally stopped


-- 
Best regards,
 Bulat                            mailto:[EMAIL PROTECTED]

_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to