Monday, April 25, 2011

New Berkeley Prelim Syllabus

I volunteered to help rethink the language design portion of the Berkeley prelim syllabus this week. Increasing the challenge is that we're cutting down from 60+ articles from before to only 36. We're shooting for about 6 core technical papers, and hoping there will be overlap with other areas (e.g., semantics, type theory, verification, optimization).

For my first pass, I've been thinking:
  1. macros
  2. continuations: on implementing prolog in functional programming
  3. meta object protocol + messages: mirrors
  4. type-directed programming: more types for nested data parallel programming
Any ideas for particulars or topic areas? For macros, I had been considering Shriram's swine before perl or Adapting Object-Oriented Frameworks to FRP. There are also some lightweight but useful papers, such as Hoare's Hints on Programming-Language Design. I couldn't think of anything sufficiently motivated for laziness (e.g., stream processing is pretty weak and equational reasoning is iffy).

Fun exercise :)

I'll try to post soon about some of the fun PL design / analysis / optimization work I've been doing. We just finished a camera ready for a workshop but I won't be writing up any of my bigger papers (SIMD tree layouts, multicore scheduling, CSS semantics / layout engine synthesis, and adoption-oriented languages) until later this year. Need to kickstart the writing process :)

2 comments:

John Zabroski said...

Kiselyov has some great stuff on laziness.

Unknown said...

Chakravarty+Keller's work is awesome stuff; great to hear that others appreciate it too.

Laziness is overrated. Sadly, SLPJ's POPL'03 talk isn't available in video format, and the slides are too silly-looking for a syllabus. But the basic idea is all they really need to know: Haskell isn't lazy because people like laziness -- it's lazy because every strict language ever created has succumbed to the siren song of impurity. SLPJ calls laziness the "hair shirt" Haskell wears to remind it to stay pure (the historical reference to the origins of the Anglican church is on the obscure side, if you ask me...).