Subject: Re: What’s gone wrong with Scheme Macros? Why all the debate?
From: Erik Naggum <>
Date: 04 Sep 2002 22:57:21 +0000
Newsgroups: comp.lang.scheme,comp.lang.lisp
Message-ID: <>

* Perry E. Metzger
| What I've noticed in a lot of people in this community (and it really
| is just one community) is a lot of arrogance.

  Funny, that, I see a lot of humility and respect for the opinions and
  thoughts of those older and wiser than oneself.  There is virtually no
  arrogance among the cognoscenti.  My experience has been one of great
  patience and willingness to help those who wish to learn.  However, when
  some arrogant little snot of a newbie walks into the forum only to spout his
  own arrogant views without listening to anybody else, the /newbie/ will
  think this is arrogance.  If you are an arrogant newbie, people around you
  will generally return the favor.  If you are interested in learning things
  from those who know, the Lisp communities are better than most.  Well, at
  least comp.lang.lisp.  The comp.lang.scheme people have generally been on
  the defensive even when they are not attacked in any way, which I can only
  interpret as symptoms of a very /protective/ crowd.  However, it has never
  been /arrogance/ that I have found even in the hostility towards comments on
  the severely limited Scheme model.

| Being a very arrogant person at times, I can perhaps recognize the symptom a
| bit better than most.

  Perhaps you do much too well?  Arrogant people tend to trigger arrogant
  responses from others, too.  It is a stupid human tendency that is only
  changed by limiting or removing one's own arrogance.

| I have often made the mistake of thinking I knew more than I really did, but
| I've been working pretty hard on keeping my mind open instead, and it often
| brings results.

  Most of the people I have found in the Common Lisp community have been well
  aware, not only of how much they know, but of where it came from and how
  they arrived at the conclusions they hold, so that they can communicate this
  to others when they need to defend their opinions.  Rapid internalization of
  new knowledge and the ability to integrate it with other information make it
  possible to produce intelligent observations and connections.  All of these
  attributes indicate both "intelligent" and "observant" to me, and not the
  dumb and judgmental attributes that correlate with arrogance.

| I don't know about that.  I'd expect that if the community was truly vibrant
| we'd be seeing things like equivalents to CPAN and such.

  I think this shows your arrogance more than anything else.  You are obviously
  not willing to consider the fact that CPAN and the like depend on much more
  than "vibrant communities" to exist.  In particular, they depend on the
  comparative worthlessness of the time spent on making software for their
  languages.  When the time you spend writing software is both worth paying
  for and it is worth paying others for their time, you get a vibrant /market/,
  not a vibrant library of free software.  You also do not solve problems that
  people are willing to solve for free.

| I've been programming long enough to know that when you're more concerned
| about what the right comment character is than about writing good comments
| you're not on the level of the important any longer.

  Just so we have this clear: You think somebody is arguing over the right
  comment character?  Where did this happen? And moreover, why is this so
  important to you that you think it reflects on the whole community?

| I also know that the nuts and bolts of getting work done is the petty
| problem of expressing algorithms for execution by machine, not the
| discussion of whether the guys who use language-flavor Y are apostates who
| must be banned from the church.

  And just so we have this clear, too: This happened where?  And it was
  important to you why?  Perhaps I do not understand your problems, like I do
  not understand the most recent troll in comp.lang.lisp who whines about the
  syntax.  Trolls are not representative of the community in any way.  You
  should know this, I think.

| Software, unlike theoretical mathematics, is largely about accomplishing
| things.  That leads people to unfortunate mundane concerns like finding a
| module that builds web pages for you or finding a module that interfaces to
| Oracle or finding a module that does statistical analysis for you. When a
| language's devotees no longer discuss such pragmatic matters and instead
| spend all their energy on religion, it implies they are not writing code.

  I would like you to think about and enumerate the many other assumptions
  that went into this rather strange conclusion.  The most important (at least
  to refute your conclusion) assumption is why these things are important to
  you.  You are undoutedly right that these things happen, just as we find the
  most brilliant mind sometimes uttering stupid comments unwittingly, but does
  that prove anything?  I do not in any way wish to deny that these things are
  sometimes discussed and are consuming the time of many people when they do,
  but I wonder why you select these events and similarly ignore the events when
  people discuss application-oriented aspects equally consumingly.  I tend to
  think of the former as supporting the notion that people want to think in
  their languages an therefore need syntax that fits their thinking.  It is only
  to the very shallow that syntax does not matter.

Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.