Maybe because of this:
function 0 = 0 where
fun 1 = 1
2 = 2
The last declaration (2=2) can define either fun or function. I'm not saying this is a major problem, but there may be other problems like these.
/J
On 23 August 2010 11:15, Brent Yorgey <byorgey@seas.upenn.edu> wrote:
> On Mon, Aug 23, 2010 at 09:33:13AM +0300, John Smith wrote:
>> Why doesn't Haskell allow something like this?
>>
>> fac 0 = 0
>> 1 = 1
>> x = x * fac (x-1)
>>
>> This would be clearer than repeating the function name each time,
>> and follow the same pattern as guards and case.
>
> Good question. I don't know of any particular reason.
>
> -Brent
> _______________________________________________
> Beginners mailing list
> Beginners@haskell.org
> http://www.haskell.org/mailman/listinfo/beginners
>