Python syntax in Lisp and Scheme

Kenny Tilton ktilton at nyc.rr.com
Wed Oct 8 23:50:14 EDT 2003


Andrew Dalke wrote:
> prunesquallor at comcast.net:
> 
>>So either the syntax doesn't make a whole hell of a lot of difference
>>in readability, or readability doesn't make a whole hell of a lot of
>>difference in utility.
> 
> 
> Or the people who prefer the awesome power that is Lisp and
> Scheme don't find the limited syntax to be a problem.

OK, here you are saying that only a certain subset of programmers have 
the genetic makeup necessary to prefer the unlimited syntax. Unlikely.

It is nice that you also say this strongly correlates with those who 
like their programming languages to be powerful. But my guess is that 
that genetic thing won't hold up: if everyone who tries Lisp for more 
than two weeks gets used to the parens, and then after two months would 
not want to edit any other way, then what makes me think anyone who 
likes programming (even the ones in your imagination who do not want 
powerful languages) would love the syntax.

   ({function | macro | special-form} arguments*) => values*

Roughly speaking (I'm no BNFer) but... hellasweet! You can chant 
"simplicity" as much as you like, but /that/ is simple.

In C i put "int x;" at the top level and I have a global. In Lisp I am 
at first astonished to see I have to type (defparameter x) or defvar or 
defconstant. Wordy! Wordy! Wordy! But eventually I realize. Oh, why is 
the C "x" a global? There is no difference between that declaration and 
the one in:

void zzzz () {
    int x;
    .....}

Oh, well, you see, it is at the top level. ie, Weird things like a form 
being at the top level have huge unspoken implications. But with Lisp 
there is a great honking special form (macro?) such as "defparameter" 
that grabs you by the lapels and screams "GLOBAL!!!". But most of all, 
it manages to get the job done with The One True Syntax, using a 
dedicated macro instead of a special syntax (top-levelness) to establish 
the semantics.

You call that "limited"? Yer just flaming.

Anyway, the point is: fuggedaboutit. Lisp syntax is unlike all the other 
languages you have ever used, so it seems bizarre to the unitiated. But 
go to c.l.l. and flame the syntax and you will discover it is something 
Lispniks love. Including those who have used and excelled at all the 
other languages. And, as you concede, these are people who groove on the 
power of Lisp. Doesn't that make folks think they better go check out 
for themselves what these folks have discovered?

     http://alu.cliki.net/The%20RtLS%20by%20Road

Don't forget your Lisp-aware editor.


-- 
http://tilton-technology.com
What?! You are a newbie and you haven't answered my:
  http://alu.cliki.net/The%20Road%20to%20Lisp%20Survey





More information about the Python-list mailing list