Why don't people like lisp?

Tayss tayss_temp at yahoo.com
Sat Oct 25 23:57:58 EDT 2003


Lulu of the Lotus-Eaters <mertz at gnosis.cx> wrote in message news:<mailman.274.1066683135.2192.python-list at python.org>...
> Incidentally, I have never seen--and expect never to see--some new
> mysterious domain where Python is too limited because the designers did
> not forsee the problem area.  Nor similarly with other very high level
> languages.  It NEVER happens that you just cannot solve a problem
> because of the lack of some novel syntax to do so... that's what
> libraries are for.

The problem I have with this argument is, people already invent little
"languages" whenever they create new libraries.  Right now I'm working
with wxPython.  Here's an idiom that comes up (you don't need to
understand it):

app   = wxPySimpleApp()
frame = MainWindow(None, -1, "A window")
frame.Show(True)
app.MainLoop()

Here, I have to put each line in a magical order.  Deviate the
slightest bit, the thing crashes hard.  It is hard to work with this
order; wxPython inherited an old design (not wxPython's fault), and
it's showing its age.

I'd fix it, but functions don't give me that power.  I need to specify
the order of execution, because GUIs are all about side-effects --
macros are a solution worth having in your belt.

I am chained to wxPython's language.  It's a language that is
basically Python-in-a-weird-order.  Why not accept we need good
abstraction facilities because code has a habit of spiralling into
unmaintainability?

I'm not slamming Python or wxPython, since for this project they're
objectively better than today's CL.  My only point is macros shouldn't
be underestimated.  Especially since there are lots of things built
into lisp to make macros nice to use.  (Like the macroexpand function,
which shows you what macros turn into.)  Even if macros are
objectively wrong for Python, people should still know about them.




More information about the Python-list mailing list