For those who do not know, Programming Languages - cop4020, is a computer science class geared at giving students the opportunity to learn about the different aspects of programming languages.

The way that the course was taught, was such that the students could use one single programming language (Oz), and learn various development strategies inherent in different programming languages.

For me, this was a very interesting way to learn programming languages. It took a while to learn the difference between a function and procedure, and where exactly one could place statements to debug programs (since debugging is a huge part of programming), etc... Yet I feel as though it was a good experience.

Also for someone that uses vim on a regular basis, it gave me an opportunity to learn emacs (though I still prefer vim because I feel faster and more productive in it than I do in emacs). Yet it was good to see how to use emacs (well in my case the command line interface of GNU emacs and Aquamacs since I did most of my work for that class on my macbook running OS X or UCF's olympus server ) and try to understand why so many people like it (and why there are holy wars over Vi(m) v.s. emacs.

Using mozart-oz on olympus can be "interesting", especially if you're not using X11 forwarding (i.e. no gui), hence I wrote this reference sheet listing some useful emacs commands for mozart-oz.

If you want to learn more about Oz check out the website: www.mozart-oz.org

follow me on Twitter