[Haskell-cafe] Investing in languages

Stuart A. Kurtz stuart at cs.uchicago.edu
Thu Jul 12 20:57:16 UTC 2018

Dear Stefan,

> BTW, the choice of programming language is also often influenced by the
> whole CS faculty members (not just the programming-language guys), and
> guess what: most of them don't use anything like Haskell in
> their projects.

I suspect this varies from institution to institution. My experience is that the faculty who most often teach a course have the most to say regarding its subject matter. Of course, the decision isn’t a simple matter of personal preference, as there are other collegial considerations, e.g., preparing students for subsequent classes, and in making it easy to recruit other faculty and teaching staff to cover other sections.

What this has meant at Chicago is that our mainstream intro course starts with Typed Racket, even though John Reppy (who regularly teaches it) would naturally prefer SMLNJ. On the other hand, the course was Scheme/Racket before, and the movement to Typed Racket is consistent with both the longstanding traditions of the course (which go back to SICP), and the idiosyncrasies of its faculty lead. On the other hand, I teach the honors version, and for many years the only section of it. Having no one to satisfy but myself, I settled on Haskell. These days, there’s a second section, and Ravi Chugh and I collaborate. FWIW, I’m not a PL guy, but rather am a theoretician via mathematical logic and computability theory. We get less push-back than you’d expect, as the quality of our students is taken as indicative of the quality of our choices.

My public justification for teaching Haskell is that the honors students I encounter either already have programming experience (usually Java, these days), or are hard core math geeks. Both have something substantial to add to the course, and their disadvantages and advantages largely offset. It makes for a productive community. My private justification includes the public one, but adds the very real consideration that by teaching Haskell, I continue to grow with the language and its practice. Ravi and I end up re-writing about 1/4th to 1/3rd of the course every year, which keeps it and us fresh.




Stuart A. Kurtz
Professor, Department of Computer Science and the College
Master, Physical Sciences Collegiate Division
The University of Chicago

More information about the Haskell-Cafe mailing list