Gmail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion Larry Wall on multiple dispatch (!!!)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Alan Crowe  
View profile  
 More options Feb 4 2008, 7:26 pm
Newsgroups: comp.lang.lisp
From: Alan Crowe <a...@cawtech.freeserve.co.uk>
Date: 05 Feb 2008 00:26:06 +0000
Local: Mon, Feb 4 2008 7:26 pm
Subject: Re: Larry Wall on multiple dispatch (!!!)
Kent M Pitman <pit...@nhplace.com> writes:

> André Thieme <address.good.until.2008.jun...@justmail.de> writes:

> > Rainer Joswig schrieb:
> > > http://www.perl.com/pub/a/2007/12/06/soto-11.html?page=2

> > >   single dispatch / multiple dispatch

> > Or pattern matching, and we have even more freedom and flexibility.

> Interesting reading as a window into someone's mind.  Lots of raw data
> about how one person's random experiences and preferences/prejudices
> and whatnot can drive a person in a certain direction.

> The remarks on Lisp on page 1 give one the definite sense that his
> info about Lisp is very old, but that he's comfortable sharing it.

Since you are interested in musing on the diversity of human
experience, let me tell you my tale. I only offer half the
tale, partly for brevity, partly because c.l.l. is not the
place for self-disclosure, and partly to bring out the
contrast with what Larry Wall writes:

> Is LISP a candidate for a scripting language? While you
> can certainly write things rapidly in it, I cannot in good
> conscience call LISP a scripting language. By policy, LISP
> has never really catered to mere mortals.

> And, of course, mere mortals have never really forgiven
> LISP for not catering to them.

My tale takes an unhappy turn in 1991 when I fall ill with
Post Viral Fatigue Syndrome. A bad case. It is early 2000
before I think about plotting a route back to work, a goal
that is over the horizon, but perhaps realistic.

I programmed digital signal processing algorithms in C in my
previous job and decide to learn C++ to come up to date.

Not such a smart decision. My concentration is not really
solid enough to survive the disruption of the
edit-compile-run cycle; I would have been better off with
something interpreted. My god, the syntax! Do I want & or
&&? Do they bind tighter than = , shit I mean == . Is *
unary prefix or binary infix? How do I know I've got the
right entry in the precedence table? I used to know this
stuff.

I cope as best I can. Object oriented programming has come
in and I need to learn about it if I'm ever to get back to
work. There are references *and* pointers. I struggle with
the "friend" stuff. I slowly start to realise that I am not
the only person with brain damage.

By March 2001 I've had enough and write in my lab notebook

    I've given up trying to learn C++ from Schildt, and now
    I'm learning ANSI Common Lisp from Graham.

What a relief. I only have to remember '(' to start a list,
')' to end a list, and ' ' to separate list items. No
operator precedence. No distinction between statements and
expressions. Both

if(antecedent) consequent; else alternative;

and

(antecedent?consequent:alternative)

are replaced by a single form, simpler than either.

No defensive insertion of extra '{' and '}'
because of the sometimes unexpected consequences of the
rules on where the ';' go.

Integers obey n+1 > n

Memory allocation is automagic.

If I'm having a bad day I can just type some forms in at the
REPL. I can keep in practice and not forget what I'm trying
to learn even if I'm not well enough to code. The REPL can
even function as an artificial friend. We chat about
Lisp. What type is this? What does that do? Are the
structures shared? I need to lie down for half an hour,
don't go away, I'll ask you what you know, apropos strings,
when I get back.

CL is a simple language whose ease of use provides me with
enjoyable occupational therapy for my disabling neurological
condition.

That is my reality. That is how CL looks from my 200 square
meters of the planet. It is a big planet, with plenty of
room for other radically different perspectives. We could
start by noting that CL is only simple in the sense that the
complicated stuff is optional, (if you code in CL-USER you
need never find out whether packages are simple or not) and
follow up with "hello world" in Java, to emphasise the
importance of whether complications are optional or
not. Let's not go there.

I want to come back to Larry Wall's perspective

> By policy, LISP has never really catered to mere mortals.

> And, of course, mere mortals have never really forgiven
> LISP for not catering to them.

What am I supposed to make of this? Larry Wall is a talented
writer with a fine turn of phrase. Has he got carried away,
crafting a witticism that goes far beyond his intended
meaning? I sense that he is playing to the crowd, crafting a
fine pair of sentences to give voice to a common sentiment,
but it also seems genuine. He is cheer leading for his own
views.

We can reconcile my perspective on CL with many other
views. A swimming pool has a shallow end and deep end. When
a child first visits the seaside and enjoys playing in the
surf as the tide comes gently in over sun warmed sand he may
declare that he likes this shallow end, it is much more fun
than the shallow end at the pool back home. Clearly one can
compare shallow ends while knowing nothing of the depths.

I hope that Kent will smile on me, splashing happily in the
shallows of CL and not feel that my perspective disparages
his work. He may even be pleased that it has an application
he could never have imagined.

I don't see how to reconcile Larry's perspective with
mine. There is something seriously, desperately wrong
here.

It makes me think about the Treviso Arithmetic of 1478. Over
the course of four or five hundred years decimal arithmetic
moved from being the new fangled thing taught in
universities to being something to be mastered by 11 or 12
in preparation for algebra.

Are we living through a period of extremely rapid change in
which a similar change is compressed into less than a
decade? Perhaps Larry and his audience belong to the
pre-transitional generation for whom recursion is scary and
difficult, while I, with an early start I've not discussed,
belong to the post-transitional generation.

Alan Crowe
Edinburgh
Scotland


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google