merits of Lisp vs Python

Ken Tilton kentilton at gmail.com
Sat Dec 9 21:59:58 EST 2006



Steven D'Aprano wrote:

> Rightly or wrongly, people fear...

So when people fear wrongly we burn whatever witches we must to reassure 
them?

> that Lisp's macros push Lisp closer to
> that hypothetical anything-goes language than is healthy. Maybe that's a
> problem of perception rather than a problem of fact, but you have to ask,
> why do people perceive Lisp that way?
> 
> Could it be because of people like J Shrager who writes things like this?
> 
> "Can't you just expand the language via macros to create whatever facility
> of this sort [major new features with new syntax] you need..."

The context was CLOS. Something that big needs new syntax. But what you 
do not know is that the syntax is Lispy, so learning it is tantamount to 
understanding new function names, as even Pythonistas must do (tho a few 
of you seem to think Pythonistas are incapable of learning <g>).


> 
> (This thread, dated 8 Dec 2006 16:14:44 -0800)
> 
> Or Wolfram Fenske:
> 
> "All the interesting features that haven't originated from Lisp (e. g. OO
> from Smalltalk) could in turn easily be implemented in Lisp with a couple
> of macros."

Right, something big like an OO.

> 
> (This thread, dated 8 Dec 2006 23:38:02 -0800)
> 
> To someone outside of Lisp, that looks like "I can make Lisp look like any
> language I like in just a few lines."

On the contrary, on the rare case when it happens (CLOS, my Cells 
package) one is obliged by exactly the hobgoblins you fear to remain 
true to lisp patterns when extending Lisp. And there are patterns in 
macro usage as well:

      (my-macro <optional arguments to macro expansion>
          <my-macro-forms>+)

Your hands must be getting sore from banging that drum so hard and so 
long -- has it ever occurred to you that good programmers concerned with 
power do not obfuscate code? And now you have read a dozen messages from 
serious Lispniks trying to tell you that that is not the case, and you 
persist.

We love the chance to preach to the unsaved, so we are indebted to you 
for the many chances to clarify, but something tells me I should check 
the c.l.p archives to make sure I am not chatting away happily with the 
village idiot. :)


> And that implies that to read a Lisp
> program, one might need to be able to read code that looks like Lisp, or
> Smalltalk, or Prolog, or Fortran, or all of those, or whatever bizarre
> syntax the developer wanted it to look like.

"I don't want to think, I just want to bang on de drum all day.
I don't want to learn, just want to bang on de drum all day."

> 
> My point isn't whether or not their claims are correct (a "couple" of
> macros? really?) but that things like this feed the perception...

Ah, well at least you are copping to witch-burning. Thx.


> And it isn't really that much comfort to be told that good Lisp
> developers know not to do stupid things with macros. 

Hmm, didn't we see that as a comforter for some powerful Python 
mechanism earlier in this thread?

> Sure. But in the real
> world of programming, most developers aren't good developers, they are
> merely average 

Two questions: do you really voluntarily use libraries from crappy 
developers? Second, you think a language can stop people from writing 
bad code? Java tried, and look where that got the language. Elsewhere a 
Pythonista (Mr. Rubin?) bemoaned this thread's appearance of Pythonistas 
shrinking from power... could you two get together? :)


ken

-- 
Algebra: http://www.tilton-technology.com/LispNycAlgebra1.htm

"Well, I've wrestled with reality for thirty-five
years, Doctor, and I'm happy to state I finally
won out over it." -- Elwood P. Dowd

"I'll say I'm losing my grip, and it feels terrific."
    -- Smiling husband to scowling wife, New Yorker cartoon



More information about the Python-list mailing list