Archive for April, 2009

Apr 21 2009

Reflections on Programming Languages Sp2009

Published by matt under Uncategorized

During the Spring 2009 semester (my second semester at Allegheny College), I had the opportunity to teach Programming Languages. If there is something in the canon of computer science that I love, it is languages. Or, perhaps I just like writing compilers and VMs. Either way, I was excited to offer the course.

I struggled with the design: I had 25 students ranging from first- through fourth-year, and the only background I could count on was that they all had two semesters of Java. I considered a survey approach, but I couldn’t see how this could possibly compare to the writing of interpreters implementing a variety of language features. In the end, we ended up using Shriram Krishnamurthi’s CC-licensed Programming Languages: Application and Interpretation along with some materials I developed myself.

I think the course went over well, and the students (in my estimation) learned a great deal about naturally recursive data structures, software testing, and the interpretation of languages. There is work to be done to improve the course for its next offering, but I think I have established a good starting point for future revisions.

As in past semesters, I asked my students what they would keep, change, add, or throw away (KCAT). I have used this evaluation process for many courses over the years, and have only recently begun writing up the results of this conversation and sharing it back with my students (and the world, FWIW). Software Design at Olin (F2007) and Introduction to Computing at Allegheny (F2008) both received this treatment. To this collection, I add a reflection on the Spring 2009 offering of CMPSC 220: Programming Languages at Allegheny College (direct PDF link).

2 responses so far