Lambda the Ultimate

inactiveTopic Adding Apples to Oranges
started 12/9/2003; 1:38:48 AM - last post 12/9/2003; 6:16:18 AM
Ehud Lamm - Adding Apples to Oranges  blueArrow
12/9/2003; 1:38:48 AM (reads: 9551, responses: 3)
Adding Apples to Oranges
Martin Erwig and Margaret M. Burnett. 4th Int. Symp. on Practical Aspects of Declarative Languages (PADL'02), LNCS 2257, 173-191, 2002.

We define a unit system for end-user spreadsheets that is based on the concrete notion of units instead of the abstract concept of types. Units are derived from header information given by spreadsheets. The unit system contains concepts, such as dependent units, multiple units, and unit generalization, that allow the classification of spreadsheet contents on a more fine-grained level than types do. Also, because communication with the end user happens only in terms of objects that are contained in the spreadsheet, our system does not require end users to learn new abstract concepts of type systems.

We discussed typing of spreadsheets before, but I think we didn't discuss this paper.

Winner of The Best Publicity Quote (and/or bogus statistic) Award:

The number of end-user programmers in the United States alone are expected to reach 55 million by 2005, as compared to only 2.75 million professional programmers

Lecture slides here.


Posted to DSL by Ehud Lamm on 12/9/03; 1:41:03 AM

rev - Re: Adding Apples to Oranges  blueArrow
12/9/2003; 2:00:47 AM (reads: 427, responses: 1)
There was a time I thought spreadsheets were lame. There was a time I thought I was better off using a "real math tool." But then I got into differential eqs (via mathematical ecology), but then I began to see the wisdom of the approach.

For me, it started off when I started using LaTeX. I was writing scientific papers (erm, well, wetland ecology take home tests!), wanting LaTeX to do my calculations as well as my layout. So I started work on a little LaTeX processor in Squeak that allowed me to put Smalltalk code for calculations within table cells in a regular LaTeX table- A1 and all that jazz. That project would still be ideal for me, but really pittered out only a quarter-ass'd.

More recently, I wrote up a little spreadsheet in the Dialect language ( http://dialect.sf.net ; a lot like python, but with NewtonScript's object model and BASIC's approach to an environment ; open source, but only for WinCE and desktop Windows AFAIK) that allowed me to not only put in the usual simple spreadsheet-syntax calculations but also enter abitrary Dialect code in, and the system interpreted what I had to say. It is a fun system to play around with, I think the whole Programming-In-A-Grid thing could really be pushed to end-users in a very good way...

-rev (with apologies to :wumpscut:)

Ehud Lamm - Re: Adding Apples to Oranges  blueArrow
12/9/2003; 6:16:18 AM (reads: 390, responses: 0)
A related paper from the same team is Visually Customizing Inference Rules About Apples and Oranges in it the authors describe a visual system to support the formal reasoning.

Ehud Lamm - Re: Adding Apples to Oranges  blueArrow
12/10/2003; 5:05:49 AM (reads: 254, responses: 0)
LaTeX processor in Squeak that allowed me to put Smalltalk code for calculations within table cells in a regular LaTeX table

Time and again I am amazed by the ingenuity and skill of LtU readers!