Scala 2

A beta version of the new Scala compiler (aptly named nsc) is now available. It's written in Scala and implements a new version of the language (aptly named Scala 2), which boasts some pretty tempting features:

  • generalized package visibility rules (a small thing, but sorely missed in Java)
  • a new mixin composition model
  • a generalized implicit parameter mechanism to replace views (views always seemed like a slightly unfinished feature, a problem which seems to have been neatly solved)
  • more flexible typing rules for pattern matching, effectively introducing GADTs

There are some other changes as well, but I expect implicit parameters and GADTs to get the most attention. Scala has been mentioned quite frequently lately, and I imagine quite a few people will want to take a(nother) look. In addition to the general information about this release, there's also a detailed description of the language changes.

Spring School on Datatype-Generic Programming 2006

If you are interested in generic programming and have some free time in April, this is for you.

LtU readers will recognize the names of the lecturers, if not the specific presentation titles. Among the lecturers are Jeremy Gibbons, Ralf Hinze, Ralf Lämmel and Tim Sheard (who will talk about putting Curry-Howard to work).

Lisp is sin

People are discussing this blog post all over, so we might as well mention it here.

The discussion is quite balanced, though you are likely to disagree about the specifics. One issue, discussed here repeatedly, is that code=data doesn't require S-expressions. Lisp expressiveness runs deeper than that.

Our discussion of Spolsky's Java Schools essay is here, by the way.


The link to be found at "Courses" targetting "Comp Sci 319: Lambda Calculus (University of Chicago)" is dead and produces a 404.