[Python-Dev] Backwards Incompatibility

Andrew Kuchling akuchlin@mems-exchange.org
Fri, 23 Feb 2001 11:01:41 -0500


On Thu, Feb 22, 2001 at 07:14:50PM -0500, Eric S. Raymond wrote:
>practice than it is in theory.  In fact, Python has rather forced me
>to question whether "No separation between code and data" was as 
>important a component of LISP's supernal wonderfulness as I believed
>when I was a fully fervent member of the cult.

I think it is.  Currently I'm reading Steven Tanimoto's introductory
AI book in a doomed-from-the-start attempt to learn about rule-based
systems, and along the way am thinking about how I'd do similar tasks
in Python.  The problem is that, for applying pattern matching to data
structures, Python has no good equivalent of Lisp's (pattern-match
data '((? X) 1 2)). [1]  Perhaps this is more a benefit of Lisp's
simple syntax than the "no separation between code and data"
priniciple.

In Python you could write some sort of specialized parser, of course,
but that's really a distraction from the primary AI task of writing a
really bitchin' Eliza program (or whatever).

--amk

[1] Which would match any list whose 2nd and 3rd elements are (1 2),
    and bind the first element to X somehow.