[Hugs-users] Pattern match failure leads to lots of output

Neil Mitchell ndmitchell at gmail.com
Fri Sep 1 18:00:27 EDT 2006


Hi

> OK, that gives:
>
>         pattern match failure: g_v1624 (Num__sc0_Num instNum_v32) (Maybe2_Just2 (Maybe1_Just1 (Num_fromInt instNum_v32 1))) Maybe2_Nothing2

Before any patches? For me with the May 2006 WinHugs, that gives output forever.

> after my patch:
>
>         pattern match failure: g (Just2 (Just1 (fromInt 1))) Nothing2
>
> which is almost readable.  Maybe I should hide fromInt/fromDouble too.

the fromInt would be nice to be hidden, but not really a problem.

The one thing I don't like about that simplification is that g_v162 ->
g. When I see g_v162 thats kind of vague, but its definately saying "a
child of g" - as I read it. Now you loose the distinction between g
and child of g.

What would of course be lovely would be g_f, for cases where g has a
named inner function that is crashing. I'm not sure how much work that
is to add though.

Even better would be a stack trace (showing the equivalent strict
stack trace), but I realise thats probably a large change :)

Thanks

Neil


More information about the Hugs-Users mailing list