CSC 272
Software II

Principles of Programming Languages
Spring, 2010

syllabus calendar homework PSP daily survey
Syllabus Calendar Homework PSP Textbook Moodle Daily Survey
This course meets from 10:00-10:50 MWF in the Gallagher lab. Our main textbook will be Shriram Krishnamurthi's Programming Languages: Application and Interpretation, which is available on the Web for free. In addition, we'll be doing some work based on Sebesta's Concepts of Programming Languages, of which I've put the 9th edition on reserve in the Library.

My office hours are M 1:00-4:00 and TTh 12:00-3:00.

I also taught this course, in various guises, in Spring 1995, Spring 1996, Spring 1997, Spring 1998, and Spring 2008.

Announcement 27 Jan: If you're using the plai library but prefer check-expect and check-within over test, take a look at this file to see how to do it.



I presume you all know how to get DrScheme. To use the PLAI language, switch languages to "Module", then type (require (planet plai/plai)) in the Definitions pane (just after the #lang scheme which should be there automatically) and click the "Run" button. It will spend a few minutes downloading and installing things the first time. After this, you have two choices for writing programs:

In either case, you'll have type-case and define-type available to you, with test rather than check-expect for writing test cases.


If you're running Windows, I recommend downloading Helium, which matches the descriptions in the textbook. (You can also download the source code for Helium, but it's written in Haskell so you'll need to install another Haskell compiler first, and the Helium people say it's a pain to compile under Windows.)

Another option for Windows is to download the Haskell Platform. This includes a Haskell compiler as well as ghci, an interactive platform similar to Helium but more closely matching the description in this tutorial.

I haven't been able to get Helium to compile on a Mac, but the Haskell Platform works fine

Other Suggested Reading

You are visitor number to this page since Jan. 13, 1997.
Last modified: Thursday, 04-Feb-2010 11:20:27 EST
Stephen Bloch /