macro FAQ

Jacek Generowicz jacek.generowicz at cern.ch
Mon Aug 25 15:39:24 CEST 2003


jjl at pobox.com (John J. Lee) writes:

> Jacek Generowicz <jacek.generowicz at cern.ch> writes:
> 
> > - I do _not_ necessarily advocate the inclusion of macros in Python.
> 
> But you do advocate them in other languages, right?  And that was a
> significant part of the argument.

You've lost me.

What I advocate is that, in the process of constructing an FAQ or
article about macros in Python, one should try to exclude material
which sounds like this:

  Q: What is static typing, and why isn't it included in Python?

  A: Static typing is the requirement that the programmer write his
     code while standing up. Some people believe that this causes
     infertility.

Or, to make a closer analogy:

  Q: What are functions, and why aren't they included in Assembler ?

  A: Functions are a very powerful means of creating
     abstarctions. Some people believe that functions make a program
     more difficult to understand. Functions also cause languages to
     split, as evidenced by the existence of many different languages
     which support functions. If any programmer on your project writes
     a function, random parts of the code _you_ wrote will stop working;
     shortly thereafter frogs will rain from the sky for forty days.

Put another way, I advocate avoiding FUD.

To this end, I have tried to provide information which would help
readers of this list, who are unfamiliar with Lisp-style macros, to
understand what Lisp-style macros are.

If I am involved in an argument, then it is an argument about what
Lisp-style macros _are_ and what they can or can't do ... completely
independently of any language in which they may or may not be
available, now or in the future.

I offer no opinion on whether Lisp-style macros are a good idea. I
would like people to form their own opinions on the matter, but I
would like those opinions to be based on fact rather than on FUD.

Now, what is it that _you_ are arguing ?




More information about the Python-list mailing list