23.3.06

Haskell Tutorial for C Programmers

By Eric Etheridge. Spotted by Mark Evans at Lambda the Ultimate.

Many people are accustomed to imperative languagues, which include C, C++, Java, Python, and Pascal. For computer science students, Haskell is weird and obtuse. This tutorial assumes that the reader is familiar with C/C++, Python, Java, or Pascal. I am writing for you because it seems that no other tutorial was written to help students overcome the difficulty of moving from C/C++, Java, and the like to Haskell.

I write this assuming that you have checked out the Gentle Introduction to Haskell, but still don't understand what's going on.

Haskell is not 'a little different,' and will not 'take a little time.' It is very different and you cannot simply pick it up, although I hope that this tutorial will help.

They Rule

An anarchist application, that let's you visually explore a database of directors of companies and institutions in the US, encouraging you to visualize the links between them. If the database was freely available, it might provide some intriguing exercise for our first year course, while 'They Rule' itself would give the students a chance to see an innovative application to contrast with, say, SQL queries.

21.3.06

Languagemachine

I had a phone call from Peri Hankey, urging me to look at his programming language, called languagemachine. It looks rather idiosyncratic to me, and doesn't seem to have much bearing on Links.

10.3.06

ECMAScript for XML

Extensions to ECMAscript for manipulating XML. Seems similar in style to Comega. Dan Suciu is listed as one of the authors!

ActionScript

An EMCAcript implementation for Flash. Recommended by Vasilis Danias.

9.3.06

OscarsX: An XML database for the Academy Awards

An XQuery demo from Howard Katz. Might provide useful data for a Links demo, once we support XML queries.

The Rule of Least Power

A pronouncement from the W3C, with Berners Lee's name on it. I was surprised to see that it mentioned Haskell! (Jonathan Robie was annoyed that it did not mention XQuery.)

9.2.06

haXe

haXe is a language designed by Nicolas Cannasse that compiles into Javascript or Flash. It provides different APIs on client and server, but otherwise provides one of the same advantages as Links, namely, a uniform language for coding on the client and server. It is implemented in O'Caml, and also seems to have a type system similar to that of O'Caml.

Links and haXe have similar goals with regard to client side programming, so there maybe some opportunity to join forces. Links differs from haXe in that it also attempts to address databases, managing session state, and concurrency. Most importantly, Links is trying to be 'as functional as possible', which means that we cannot always easily make use of existing APIs, which tend to be imperative, while haXe imports these essentially unchanged.

1.2.06

Champagne Prototyping

By Alan Blackwell, Margaret Burnett, and Simon Peyton Jones. 12 pages, March 2004. Another innovative techniquer for evaluating usability. Used to evaluate a proposed feature for Excel.

Convergent Usability Evaluation: A Case Study from the EIRS Project

By Jeff Jones, Catherine Marshall, and Erik Nilsson. An innovative user study. Maybe useful for Links, where we need to build web applications but will not have many resources for usability. EIRS is the Election Incident Reporting System (EIRS), which was used to monitor recent US elections.