Why is tcl broken?

Marco Antoniotti marcoxa at copernico.parades.rm.cnr.it
Tue Jun 29 18:17:55 CEST 1999

claird at Starbase.NeoSoft.COM (Cameron Laird) writes:

> >Of course I could have defined a much more intricated macro.
> 			.
> 			.
> 			.
> As it happens, there's very good work going on just now
> to beef up Tcl's introspective capabilities.  Is *that*--
> introspection--the real content of your preference?

Nope, you must correct me if I am wrong, but in Tcl, you set up a new
'form' by writing a "proc".  This "proc" takes some Tcl 'list' (with
strings as leaves) and produces another list (with strings as leaves).

When "proc" is used within some code, its code is executed at
runtime.  This is not what happens in Lisp, Scheme and Dylan, where
macros are evaluated at read-time.  This is pure code transformation,
which when fed in the Common Lisp *compiler* produces inlined code.

Introspection is not something I was very interested in when making my
point. I just wanted to point out that with Common Lisp (and Scheme, and
Dylan) you get a native compiler.

If we want to talk about introspection, have you ever seen a Common
Lisp inspector?  It is based on a lot of "introspective" functions,
which were present in Common Lisp in 1984, 15 years ago.

> Incidentally, many of the same ideas and possibilities
> are available to Python, although I don't know of anyone
> actively pursuing them for Python.  While Tim Peters im-
> presses me with, among much else, his ability to code
> clever little methods that tease all sorts of informa-
> tion from a Python interpreter, I occasionally argue that
> 'twould be worth the effort to do introspection for Py-
> thon in a more unified way.

As Common Lisp does? (sorry, I couldn't resist :) )


Marco Antoniotti ===========================================
PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY
tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26

More information about the Python-list mailing list