Python syntax in Lisp and Scheme
Andrew Dalke
adalke at mindspring.com
Thu Oct 9 15:52:47 EDT 2003
Me:
> > Note that I did not at all make reference to macros. Your statements
> > to date suggest that your answer to the first is "no."
Doug Tolton:
> That's not exactly my position, rather my position is that just about
> anything can and will be abused in some way shape or fashion. It's a
> simple fact of working in teams. However I would rather err on the side
> of abstractability and re-usability than on the side of forced
restrictions.
You are correct. I misremembered "Tolton" as "Tilton" and confused
you with someone else. *blush*
My answer, btw, that the macro preprocessor in C is something
which is useful and too easily prone to misuse. Eg, my original
C book was "C for native speakers of Pascal" and included in
the first section a set of macros like
#define BEGIN {
#define END }
It's not possible to get rid of cpp for C because the language
is too weak, but it is something which takes hard experience to
learn when not to use.
As for a language feature which should never be used. Alex Martelli
gave an example of changing the default definition for == between
floats, which broke other packages, and my favorite is "OPTION
BASE 1" in BASIC or its equivalent in Perl and other langauges.
That is, on a per-program (or even per-module) basis, redefine
the 0 point offset for an array.
Andrew
dalke at dalkescientific.com
More information about the Python-list
mailing list