[Ur] 'Anonymous function remains' in state monad

Adam Chlipala adamc at csail.mit.edu
Fri Aug 15 17:58:13 EDT 2014


In my modification of your starting code, I made the type family 
[monad_state] abstract in the module signature, instead of giving its 
definition.  Everything works fine in that case, and I think it's nicer 
from a modularity perspective.

On 08/15/2014 02:46 PM, Sergey Mironov wrote:
> OK, I understand the idea. Unfortunately, compiler seems to go crazy
> after this change. The first error message is following:
>
> urweb -dbms sqlite ./test/Test4
> /home/grwlf/proj/urweb-monad-pack/test/Test4.ur:10:11: (to 10:20)
> Unification failure
> Expression:  MO.get [<UNIF:U11::Type>] {}
>    Have con:
> <UNIF:U11::Type>  ->  option (<UNIF:U11::Type>  *<UNIF:U11::Type>)
>    Need con:<UNIF:U8::Type ->  Type>  <UNIF:U9::Type>
>
> Looks like it doesn't want to use the monad_state instance as aid for
> code generation or something like that..
> I've pushed the changes to the github.
>    




More information about the Ur mailing list