[clean-list] Re: Clean compiler exited abnormally

Ronny Wichers Schreur ronny@cs.kun.nl
Thu, 13 Sep 2001 17:00:15 +0200


Gé writes (to the Clean mailing list):

>[..] Is it because this definition gives extra restrictions to the
>type of str2d` that the compiler does not derive?

Yes. The derived type for str2d` is

  str2d` :: Int (m {t}) -> String | Array m & ArrayElem, toString t

Because it's used in a context where (m {t}) is {{t}} the compiler
should create a specialisation of str2d` with type

  str2d` :: Int {{t}} -> String | ArrayElem, toString t

but because of the bug this seems to go wrong somewhere. So the
work-around is to point the compiler in the right direction by
specifying the specialised type.


Cheers,

Ronny Wichers Schreur