suit yourself :)
Conversation
More just pointing out that there are some neat things about how logic programming does things. Eg. with modes and determinism. Could possibly be a handy perspective perhaps when coming up with a general notation for this stuff, but I dunno.
2
1
Oh yeah, definitely thinking more in terms of 'high level specifications for communication' rather than an actual implementation. I definitely care about the precise proof search strategy too, however.
2
1
That said, Mercury would be able to generate pretty efficient code for a bidirectional type checker defined using the modes above. I wouldn't want to use it for an implementation though - more because I'd want an actual implementation to do error recovery, and give nice errors.
1
1
It would be neat if you could somehow 'decorate' the high level spec with stuff to do with errors though - kind of like how ornaments work?
1
1
I know Ulf Norell's thesis on Agda defines a macro over the elaboration rules (in prose) that allows him to thread the metacontext through all the rules. Not sure if that is similar! But kind of reminds me a bit.
yeah that’s exactly the sorta thing I mean; the state monad, the error monad, etc etc
1
Show replies

