Sunday, February 26, 2006

Posting Splurge

This is the last in a posting splurge I've had this afternoon: six paper posts have been added and one has been updated. I intend this to be the first in a series of weekly or biweekly session in which I post the papers I've been reading. Perhaps now that I'm studying education rather than computer science, I'll be able to get some more reading done.

Suggestions of papers to read are most welcome and can be sent by email.

Putting Curry-Howard to Work

Putting Curry-Howard to Work by Tim Sheard.

This paper describes some type system feature suggested by the Curry-Howard isomorphism (which states that types are propositions and that programs are their proofs). The language Ωmega is a descendant of Haskell in which the author has implemented all of the features described in the paper.

I still haven't finished reading it, but it's at the top of my pile.

DOI | Del.icio.us | CiteULike | LtU

Cross-National Correlations of Quantifiable Societal Health with Popular Religiosity and Secularism in the Prosperous Democracies

Cross-National Correlations of Quantifiable Societal Health with Popular Religiosity and Secularism in the Prosperous Democracies

An interesting look at the claim frequently made by theists that religion promotes, or is even the source of, morality.

Google | Del.icio.us | CiteULike

Finger Trees: A Simple General-purpose Data Structure

Finger Trees: A Simple General-purpose Data Structure by Ralf Hinze and Ross Paterson.

This paper presents 2-3 finger trees, a purely functional representation of persistent sequences. The ends of each sequence can be accessed in amortised constant time and they can be concatenated and split in logarithmic time. Best of all, the paper develops them in Haskell.

I've started working through the code myself, but have not yet managed to get it finished.

DOI | LtU | CiteULike | Del.icio.us

Matching Power by Cirstea H, Kirchner C and Liquori L.

Matching Power by Cirstea H, Kirchner C and Liquori L.

This is the first paper I've read about rewriting calculi and, if nothing else, it's made me want to read more. In it, the authors provide an introduction to pattern matching, introduce the syntax and semantics of the ρ-calculus, and present a number of compelling examples of its power. Section four is the most interesting part of the paper (the rest being primarily and introduction to the calculus): in it the authors present encodings of the Lambda Calculus of Objects (Fisher, Honsell, and Mitchell) and the Object Calculus (Abadi and Cardelli) into the ρ-calculus.

ACM | Google | CiteULike | Del.icio.us | LtU

Interpreting the Data: Parallel Analysis with Sawzall (Draft)

Interpreting the Data: Parallel Analysis with Sawzall (Draft)

While MapReduce and GFS allow Google to use their massive computer clusters effectively, the use of C++ can make programming for such a systems more difficult than it needs to be. Cue Sawzall, a new language that Google use to write distributed, parallel data-processing programs for use on their clusters. While the language isn't particularly attractive (I've never liked C-style syntax's), the approach is very interesting and the implementation issues they describe are enlightening.

LtU | CiteULike | Del.icio.us