What's better about Ruby than Python?
Doug Tolton
dtolton at yahoo.com
Wed Aug 20 14:01:37 EDT 2003
On Tue, 19 Aug 2003 13:43:11 +0200, Alex Martelli <aleaxit at yahoo.com>
wrote:
>Doug Tolton wrote:
> ...
>> abstractions and better programmer productivity. Why not add Macro's
>> allowing those of us who know how to use them and like them to use
>> them. If you hate macros, or you think they are too slow, just don't
>> use them.
>
>"No programmer is an island"! It's not sufficient that *I* do not use
>macros -- I must also somehow ensure that none of my colleagues does,
>none of my clients which I consult for, nobody who posts code asking
>for my help to c.l.py or python-help -- how can I possibly ensure all
>of this except by ensuring that macros ARE NOT IN PYTHON?! "Slow" has
>nothing to do with it: I just don't want to find myself trying to debug
>or provide help on a language which I cannot possibly know because it
>depends on what macros somebody's defined somewhere out of sight. Not
>to mention that I'd have to let somebody else write the second edition
>of the Nutshell -- if Python had macros, I would have to cover them in
>"Python in a Nutshell".
>
Sadly, I would say that is something that would sway me. I love my
Python in a Nutshell book. I have that baby on my desk and I refer to
it *daily*. Although I'd say that's more extortion than a winning
argument!! :-p
I just don't see Macros as the huge threat you do. As someone
mentioned in a previous post, the option would require to do declare
explicitly that you are using Macros. Why is that such a *huge*
issue? Why is it that the very *existence* of a Macro in a program
would offend your sensibilities?
> They don't change the underlying language, they just add a
>> more useful abstaction capability into the language.
>
>They may not change the "underlying" language but they sure allow anybody
>to change the language that is actually IN USE. That is definitely NOT
>what I want in a language for writing production-level applications.
I tend to disagree on this point. I like the idea of being able to
treat commonly reused idioms as if they are a part of the language.
>
>I dearly hope that, if and when somebody gives in to the urge of adding
>macros to Python, they will have the decency to FORK it, and use an
>easily distinguishable name for the forked Python-with-macros language,
>say "Monty". This way I can keep editing future editions of "Python in
>a Nutshell" and let somebody else write "Monty in a Nutshell" without
>any qualms -- and I can keep programming applications in Python, helping
>people with Python, consulting about Python, and let somebody else worry
>about the "useful abstaction" fragmentation of "Monty". If that "useful
>abstaction" enters the Python mainstream instead, I guess the forking
>can only be the last-ditch refuge for those of us (often ones who've seen
>powerful macros work in practice to fragment language communities and
>end up with "every programmer a different language"... do NOT assume that
>fear and loathing for powerful macro systems comes from LACK of experience
>with them, see also the Laura Creighton posts whose URLs have already
>been posted on this thread...) who'd much rather NOT have them. But maybe
>moving over to Ruby might be less painful than such a fork (assuming THAT
>language can forever stay free of powerful macro systems, of course).
That certainly is one way for it to happen. I must say I certainly am
suprised at your vehemence. I don't think the natural state of human
beings is singular in purpose or design. I think the natural state of
humans is to fracture into competing camps / factions. *Every* human
system of any size has factions of some sort or another. I think the
power of Unix / Linux in general has been in working to allow these
factions to Co-exists peacefully. By trying to prevent factioning
within the community, I think you will ultimately only be successful
in driving people with different viewpoints out of the community.
>
>I have nothing against macros *IN GENERAL*. I just don't want them *in
>my general-purpose language of choice for the purpose of application
>programming*: they add NOWHERE NEAR ENOUGH PRODUCTIVITY, in application
>programming, to even START making up for the risks of "divergence" of
>dialects between individuals, groups, and firms. If I was focused on
>some other field than application programming, such as experimental
>explorations, tinkering, framework-writing, etc, I might well feel quite
>otherwise. But application programming is where the big, gaping hole
>of demand in this world is -- it's the need Python is most perfectly
>suited to fulfil -- and I think it's the strength it should keep focus
>and iinvestments on.
Again, I disagree. It appears to me as though you've had some near
death experience with Macros that left a sore taste in your mouth.
Could you elaborate some on what your experience has been that turned
you so definitively sour on Macros?
>
>Alex
Doug Tolton
(format t "~a@~a~a.~a" "dtolton" "ya" "hoo" "com")
More information about the Python-list
mailing list