[Haskell] Empty instance declaration

Jan-Willem Maessen jmaessen at alum.mit.edu
Fri Dec 28 13:55:19 EST 2007


On Dec 28, 2007, at 12:06 PM, Ralf Laemmel wrote:

>> You did not say anything that's imprecise about "mentioning each  
>> other
>> in a cycle", just the well-known fact that it's not equivalent to  
>> total
>> termination checking (in fact, it's neither fully an overestimate nor
>> underestimate of termination -- it's just an estimate that's likely  
>> to
>> be right when used in the context of default method definitions).
> [The hard general cases]
> ... and that's still very imprecise because the dots don't mean  
> anything proper.
>
> Are you willing to look at the pattern *after* overloading resolution.
>
> Let's have a proper termination checker!

It occurs to me to ask: would "returns bottom given non-bottom  
arguments according to strictness analysis" be good enough?  Because  
that information is useful for other things as well, and relatively  
easy to compute using strictness analysis.  Then "extra pragmas" might  
be as simple as pragmas saying "yes, compiler, I expect the following  
function to return _|_"---again an annotation that has other potential  
uses.

-Jan-Willem Maessen



More information about the Haskell mailing list