30.10.08

Atypical Typing

Mark Jason Dominus' talk at OOPSLA 2008. This covers similar ground to my OOPSLA talk, but in many ways Dominus makes a better job of it than I did. And it sounds better coming from someone outside the Haskell community.

27.10.08

From computers to ubiquitous computing, by 2020

I haven't had the time to read this yet, but it seems worth a look. Includes articles by Andy Hopper, Jeanette Wing, Thomas Henziger, Ronald Rivest, and Robin Milner, among others.

20.10.08

16.10.08

Method and Apparatus for Automatic Notification and Response Based on Communication Flow Expressions

I've always envied those that list patents on their cv. Now I can too!

Joanne J. Ordille, Thomas A. Petsche, and Philip L. Wadler. Method
and Apparatus for Automatic Notification and Response Based on
Communication Flow Expressions. US Patent no.: 7,436,947 B2. Date of
Patent: October 14, 2008.

15.10.08

Garbage Collection and the Dust Heap of History

[A post in honour of Blog Action Day.]

Last month, at the workshop Commercial Uses of Functional Programming (CUFP), one of the speakers described the use of Haskell for garbage collection. Not for reclaiming unused computer memory, but for programming an embedded processor in the hydraulic engine of a garbage truck. As he pointed out, every five-year old thinks working with garbage trucks is cool. I think its cool too. Twenty years ago, when we created Haskell, I would not have found it credible if you told me that in twenty years time it would be running in a garbage truck.

Indeed, twenty years ago, most practitioners in my field were avoiding garbage collection altogether—and now I am referring to reclamation of computer memory. They would tell you it was too slow and too inefficient, because they were used to C and C++. Then Java came along, and now garbage collected languages are the accepted norm.

Now let's shift time and subject. Three years ago, when I still felt new to my new home, the city of Edinburgh hosted the Make Poverty History march. It was wonderful to see folk converge from all over to push the cause to the G8 leaders, meeting nearby in Gleneagles. But the thing I enjoyed most was the audacity of the theme. Make Poverty History. Not, Let's Reduce Poverty. But, Let's Eliminate Poverty Completely. No person lacking water, food, shelter, education.

Of course, it seems impossible. And as time goes by, and the G8 leaders fall further behind the Millenium Goals they set themselves, it seems less likely still. But, as I hope the technical stories above show, sometimes what seems impossible one day seems common wisdom the next.

No better example exists than recent events. Today's Daily Telegraph notes that the UK, US, and Europe are spending two trillion pounds (£2,000,000,000,000) to bail out the banks. Socializing banks was unthinkable a year ago. Now everyone is doing it.

And for less than two trillion pounds we could put poverty on the ash heap of history.

3.10.08

Many Eyes


A web site devoted to tools for visualization. Some neat stuff here! To the left, a visualization of the words spoken by John McCain in his acceptance speech at the Republican Convention.

16.9.08

Provenance semi-rings

One joy of my recent visit to Penn (see below) was a chance to look at recent work by Val Tannen and others on a generalized model of provenance. Reading these papers was the perfect way to brighten up my trip home. Truly elegant.

Todd J. Green, Grigoris Karvounarakis, Val Tannen. Provenance semirings. PODS 2007, Beijing, China.

J. Nathan Foster, Todd J. Green, Val Tannen. Annotated XML: queries and provenance. PODS 2008, Vancover, Canada.

Combining Events And Threads For Scalable Network Services

Last week, I enjoyed a visit to Penn for Nate Foster's PhD proposal. They have a great language group, and I had many enjoyable discussions. Many thanks to Nate Foster, Steve Zdanceowic, Benjamin Pierce, and everyone else for hosting my visit.

I also got to read some great papers I might otherwise have missed. Here's one, another in my next post.

Peng Li and Steve Zdancewic. Combining Events And Threads For Scalable Network Services. In Proc. 2007 ACM SIGPLAN Conference on Programming Languages Design and Implementation (PLDI), pages 189-199, 2007.