Why is tcl broken?
pduffin at mailserver.hursley.ibm.com
Wed Jun 30 06:10:23 EDT 1999
Marco Antoniotti wrote:
> Nope. *best* is the Common Lisp Macro system, with Scheme/Dylan syntax
> stuff a second best. The notion of 'upvar' in Tcl makes my head
I am surprised at this because Tcl's [upvar] is simply an explicit form
of dynamic binding which I seem to remember is what Lisp uses. (That
is how the 'let' function can be (is) implemented as a lambda function).
> spin. :) Finally, AFAIU, a Tcl "macro" must run as an interpreter of
> the spec. A Common Lisp (Scheme) macro is compiled into regular code
> by read-time expansion.
I find that Lisp macros (while a very powerful and necessary mechanism)
are sooo confusing. They are in essence another language inside Lisp,
and as such introduce inconsistencies. Tcl on the other hand doesn't
need a macro language and as such is much more consistent than Lisp.
If I needed a macro language in Tcl I can just write one.
Lisp and Tcl have a lot more in common than Lispers seem to want to
DT/6000 Development Email: pduffin at hursley.ibm.com
IBM UK Laboratories Ltd., Hursley Park nr. Winchester
Internal: 7-246880 International: +44 1962-816880
More information about the Python-list