A critic of Guido's blog on Python's lambda

Ken Tilton kentilton at gmail.com
Mon May 8 14:33:00 CEST 2006

Adam Jones wrote:
> Ken Tilton wrote:
>>Alexander Schmolck wrote:
>>>[trimmed groups]
>>>Ken Tilton <kentilton at gmail.com> writes:
>>>>yes, but do not feel bad, everyone gets confused by the /analogy/ to
>>>>spreadsheets into thinking Cells /is/ a spreadsheet. In fact, for a brief
>>>>period I swore off the analogy because it was so invariably misunderstood.
>>>>Even Graham misunderstood it.
>>>Count me in.
>><g> But looking at what it says: "Think of the slots as cells in a
>>spreadsheet (get it?), and you've got the right idea. ", if you follow
>>the analogy (and know that slot means "data member" in other OO models)
>>you also know that Serge's Spreadsheet example would have scored a big
>>fat zero on the Miller Analogy Test. Serge in no way made slots in
>>Python classes behave like cells in a spreadsheet. He simply started
>>work on a Spreadsheet application, using Python classes along the way. Bzzt.
>>While everyone makes the mistake, it is only because few of us (me
>>included) read very carefully. Especially if they are more interested in
>>flaming than learning what someone is saying.
> I don't really mean any disrespect here, but if an analogy is not
> interpreted correctly by a large group of people, the analogy is crap,
> not the people. 

No, I do not think that follows. I reiterate: people (inluding me!) read 
too quickly, and this analogy has a trap in it: spreadsheets are /also/ 

The analogy is fine and the people are fine, but as you suggest there is 
a human engineering problem to be acknowledged.

btw, I have a couple of links to papers on similar art and they all use 
the spreadshett metaphor. It is too good not to, but...

> Yes, I understood it, specifically because I have spent
> enough time dinking around with cell functions in a spreadhseet to
> understand what you meant.
> Maybe it would help to change the wording to "functions with cell
> references in a spreadsheet" instead of "cells in a spreadsheet".

<g> We could do a study. I doubt your change would work, but, hey, that 
is what studies are for.

I think probably the best thing to do with the human engineering problem 
is attack the misunderstanding explicitly. "Now if you are like most 
people, you think that means X. It does not." And then give an example, 
and then again say what it is not.

Anyone who comes away from /that/ with the wrong idea just is not trying.

But I would not put that in the project synopsis, and that is all the 
original confused poster read. Just not trying.


Cells: http://common-lisp.net/project/cells/

"Have you ever been in a relationship?"
    Attorney for Mary Winkler, confessed killer of her
    minister husband, when asked if the couple had
    marital problems.

More information about the Python-list mailing list