A toy call-by-push-value language

I have added two new languages to the PL Zoo. The minor addition is miniml+error, which is just MiniML with an error exception (raised by division by 0) that cannot be caught. The purpose is to demonstrate handling of fatal errors during runtime. The more interesting new animal is levy (written by Matija Pretnar and myself), an implementation of Paul Levy’s call-by-push-value language. If you only know about Haskell’s call-by-name and ML’s call-by-value, I invite you to learn about call-by-push-value. Start by reading Paul’s FAQ.

One thought on “A toy call-by-push-value language

  1. We have made some changes to levy to make look much more like Paul Levy’s original call-by-push-value language. (The first version was rather confused because we were a bit confused about what is what. We thank Paul for straightening us out.)

Leave a Reply

Your email address will not be published. Required fields are marked *