I may check back in six months to see if
things have improved.
I'm sorry that you had to endure all
those flame postings.
I agree. When I see a thread fly off onto a flamable tangent, I usually
killfile it.
--
Barry Margolin, bar...@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
Agree. Somehow there is huge difference in attitude within the "LISP
community" about 30 years ago when I started with LISP, and now when I
am back after long break. There are just too many guys with too much
ego, and frequently, personal arguments are used instead technical
ones. Unfortunately, you can find this sort of behavior on other
groups, too.
Fortunately, news readers have one great feature: Kill File. Put all
moronic jerks there and continue talking to guys who have something to
say.
What is exactly what I wanted to say using my broken English that is
not good enough for some purists posting to this group.
A.L.
Would you mind if I took credit for this by arguing that you ran away
with you tail between your legs when you were simply asked to provide
references for your increasingly psychotic claims and prove all the
insane crap you claim about other people?
| Maybe this will have the effect of calming Erik down although I fear that
| you're in for reading a few more months of person insults directed at me.
I think you have never grasped that you had the opportunity to discuss
this on technical terms, but never took it. You started calling people
"religious" right off the bat as soon as they disagreed with you, and you
have not stopped, even though several people, including myself, have put
forth arguments that you _should_ have taken seriously if you had any
other interest than making this a personal fight. This has been personal
for you all the time, because if* is a _psychological_ issue to you. You
lose such fights if you pick them with me, because I do not attack the
person as _such_, which you have been doing all the time, I attack the
person for something they _do_, for which the are actually responsible,
but which they can quit doing, and then the criticism will cease, too.
You have never understood this, and I think this explains why you behave
so incredibly stupidly and are so self-destructive. You _keep_ doing
things that must be criticized, even according to your _own_ standards,
and you are not quitting, but defending yourself, which means that the
criticism can only intensify. Your failure to grasp what you have been
criticized for is acutally a pretty good sign that you are mentally ill
and naturally think other people are, too. Other people have, in fact,
understood the arguments as they have been presented, and they are not
aliases for me (I was amazed you would sink so low as to post anything
_that_ stupid and paranoid).
| I may check back in six months to see if things have improved.
While I expect your response to this message. Surprise me and shut up
for six months.
| I'm sorry that you had to endure all those flame postings.
Like a bank robber who returns to the scene of the crime and wants to
"apologize" for his transgressions and scaring the bejeezus out of
innocent people, this is just too disgusting to watch. You had a choice
not to flame anyone to begin with. You are just too childish to play the
role of the "responsible" until you think you can win anything by it.
Let us hope our freedom from your crappy articles in this newsgroup will
be even longer than six months. If necessary, I will have a few friends
of mine stage a mock fight in the middle of May just to keep you away.
///
--
Norway is now run by a priest from the fundamentalist Christian People's
Party, the fifth largest party representing one eighth of the electorate.
--
Carrying a Swiss Army pocket knife in Oslo, Norway, is a criminal offense.
Because he lost the fight he chose to pick, of course. The worst losers
always have to announce their withdrawal from the forum in which they
have chosen to embarrass themselves beyond shame, rather than try to do
something less embarrassing. That is _why_ they are losers. If they had
had any notion of constructive use of the forum they leave, they would
simply have done something constructive, instead of only telling _others_
what to do when they cannot do it themselves.
Nobody drove him out of the newsgroup. Such "passiveness" is typical of
people who cannot take charge of their own situation and fix whatever
they do not like -- be it the "tone" in a newsgroup or a feature in a
language -- it has to be somebody else's fault, and the more they "refuse
to fix it", the more they can believe in conspiracies and bad people who
make their lives miserable. This is the way of the loser. He has, in
fact, _full_ control over his own actions and he could simply have quit
posting his insane drivel, lies, and attacks. He himself suggested he do
that, but when he failed to keep his word (again, it was somebody else's
fault), he chooses to make a stink and slam the door on his way out,
believing that this would not be considered the ultimate act of cowardice.
Now, Treat John Foderaro like an adult, not the child he appears to be.
He does _not_ deserve anyone's pity for not being able to control himself
and just do what he says and demands of others. He has been using stupid
intimidation techniques to "win" by destroying his opponents, but nobody
wins that way. You win a debate by being smarter than your opponent, not
by being more stupid. If somebody says something hurtful, it may create
a sense of satisfaction to take revenge, but nothing has happened to that
which hurt. Idiots seek personal revenge. Mature people seek justice.
Smart people seek to understand and to outsmart their critics. If you
love Google like he does, check out how he treats people who makes _any_
argument against his beliefs. "That is *your* opinion" is just not a
grown man's reaction to honest concern, and callling people who disagree
with him a "cult" and "religious" is simply not something you do if you
have a working brain and actually want to participate in a technical
forum. Why is this man the Chief Scientist at a major Common Lisp vendor?
John Foderaro abused this forum to further his personal agendas, one of
which is to undermine the ANSI CL standard, which was _supposed_ to be
our common point of agreement, but which he has rejected. John Foderaro
has rejected this forum just as he has rejected Common Lisp, and _that_
he did long before the standard was finalized. His inability to convince
a committee of really smart people to use lower-case symbol names (which
would have been a really good idea), for instance, has been eating him up
since before Common Lisp the Language was published in 1984 and he was
not a member of the committee that produced the ANSI standard. Why?
Because it has _never_ been a technical issue to him that he could get
reasonable people to agree with him on. If it had been, I am certain the
committee would have found ways to accomodate him beyond readtable-case
and :invert, but you do not get people to work towards your goals if you
call them "braindamaged" in working relationships. It has become clear
to me while trying to work with John Foderaro that certain things are not
subject to solution: He _prefers_ to be griping about them forever rather
than solve them in a compatible way. This is _exactly_ what we have seen
from him in this newsgroup. For instance, readtables were added to the
language in 1989, but not fully supported in Allegro CL until 2000. This
is the kind of thing in the standard that would have accomodated what he
said he wanted and would have let people use a case-sensitive Common Lisp
reader if they wanted to, but instead of this, they got set-case-mode, an
ancient tool which works by _converting_ all the symbol names in the
entire Lsp image, and which did not let people mix "modern mode" with
readtable-case functionality until another engineer at Franz Inc did the
work at my persistent request. I believe that John Foderaro is as much
an impediment to conformance in Franz Inc products as he is a detractor
from community acceptance of the standard in this group.
Now, for six months, if you believe that, we can work together, knowing
that at least one fewer stupid jerk will waste our time quibbling over
non-issues and going postal when somebody does not accept his hostile
comments towards the foundation for the community. No other programming
language community has been subject to such rampant idiocy after they had
achieved a standard. People have either left the process or accepted the
defeat and moved on with their lives -- griping about a failure to get a
committee to agree with you is simply not worth decades of anger. The
end result is that those who have stayed have been _enthusiastic_ about
the standard. Somehow, the Common Lisp community has not achieved that
level of community agreement about _its_ standard, and the person _most_
responsible for this is John Foderaro, who has also been such a clear and
present danger of filibustering and making serious problems in case we
reopen the standard that it probably will never happen. If people have
tired of John Foderaro in this newsgroup, imagine what he will do when a
committee does not agree with him. If he could not get over upper-case
symbol names in 15 years, nobody should expect that he does after a new
committee vote on the matter. When I made a point out of what I wanted
from my Common Lisp vendor, it was precisely to ask John Foderaro (and
Franz Inc by extension) to grow up and realize that he was hurting the
community with his negative attitude towards what the community had
already agreed upon. If he does not accept that, he should simply find
another community -- not that I think there is room for it -- or create
one, but _not_ under the name Common Lisp. The Open Source stuff he
posts (which I do not trust enough to use and think looks like some
ancient pre-Common Lisp that has little to do with good, modern Common
Lisp style) is an attempt to build a new community to his own liking, but
what I really do not understand is what attraction _Common_Lisp_ has to
him when it is so braindamaged and stupidly designed as he claims. Most
of us can always find something we hate about something big and useful,
but smart people figure out how to live with it in a constructive way.
It appears that his griping about these misfeatures is his raison d'être,
or at least for staying in the Common Lisp community. Several trolls in
comp.lang.lisp have shared this personality disorder and cannot live
without complaining about something. Six months without each of them
would really be nice. One less troll is a good thing.
>* Rajappa Iyer
>| Why let anyone drive you out of the newsgroup?
>
> Because he lost the fight he chose to pick, of course. The worst losers
> always have to announce their withdrawal from the forum in which they
> have chosen to embarrass themselves beyond shame, rather than try to do
Sir, maybe you are right or wrong. I don't care. This what I do care
is that I don't like to see such things as your long diatribe. It
would be nice to know your opinion about LISP as programming
language; it is absolutely not interesting and irrelevant to know
your personal opinion about individuals posting to this group.
Please, feel yourself honored for being located in my Kill File. You
will be there in good society.
A.L.
> Nobody drove him out of the newsgroup. Such "passiveness" is
> typical of people who cannot take charge of their own situation
> and fix whatever they do not like -- be it the "tone" in a
> newsgroup or a feature in a language -- it has to be somebody
> else's fault, and the more they "refuse to fix it", the more they
> can believe in conspiracies and bad people who make their lives
> miserable.
I dunno. Maybe this describes me, too. I've taken sometimes to
passive resistance about things that bug me around here: Sometimes I
take time off from the newsgroup, too. I have done this because I
don't like people dumping on you, Erik. Not to be personally
defensive of you, but because I think it does not serve the newsgroup
well for there to be threads picking on people.
Sometimes people bicker on a technical thread, but at least one has to
read dome posts in order to find such stuff. By contrast, subject
headers for threads are highly visible to even the most cursory
visitors. Consequently, I think it detracts especially for infighting
to be promoted to there.
I wish Fodarero hadn't started this useless non-programming thread.
But I'm also sad to see others, including you, Erik, indulging it as
if it were a legitimate conversation area. There are a great many
technical and even political issues to be talking about. But I think
"personal politics" is really not useful. Please let's get back to
discussing the ample number of technical issues.
To save anyone who would do so the time, I plainly omit a certain
amount of hypcrisy in this message, both chiding people for posting on
this thread and doing so myself. I plan this to be my only message on
this thread. I wish I hadn't felt a need to send this, but for
whatever reason, I did send it. (I guess my personal threshold of
pain is when harsh words escalate to the point of requiring a thread
of their own, making it impossible for anyone peeking at the newsgroup
not to see our dirty laundry being aired.) But now that I've sent
this, I especially don't want to waste time repeating myself over and
over. If someone tricks me into posting further, I'll do like John
and resign myself to taking some time away from the newsgroup to
assure I don't continue to feed the flames.
Kent M Pitman wrote:
> I dunno. Maybe this describes me, too. I've taken sometimes to
> passive resistance about things that bug me around here: Sometimes I
> take time off from the newsgroup, too.
Well, I dont even post here. (and I shouldn't now, but...)
A couple of you may remember me, but I'm not doing Lisp these days.
I still lurk, because of the _general_ programming insights I get
from Lispers, even when I'm working in other languages.
Lisp and Assembly language are some of the most valuable mental
tools, whether or not you use them as programming tools.
I particularly enjoy reading my old friends, Kent, Barmar, Scott
Mckay and a few others. And I get a lot of insight reading Erik's,
and John's postings --- when they're on topic, and whether or
not I agree with them. [That's the carrot part]
But it does get annoying to wade through the bile, misguided
psychanalyses, and general flame wars --- typical of usenet,
yes, but particularly bad here ---- and, I agree with Kent that
it's doing a disservice to Lisp.
[Here comes the stick part]
And while there's a few people who dont quite rise to name-recognition
that seem to enjoy baiting and insulting Erik (and probably John too),
I really have to place the bulk of the blame on Erik and John.
Please dont be so thin-skinned; you dont have to defend every slight.
And go back to any several of your own postings, substituting your
name for the other. How would _you_ feel if that were posted?
[and now to the arm-around-the-shoulder, commeradery part]
So, please, both of you (and anyone else this might apply to),
chill, mellow out a bit, get back on topic....
I'd really like to get back to lurking in peace, and reading
both your postings ....
---
bruce miller
If people could be as decent in their flaming towards me as I am towards
them, _much_ would improve. I am not making this comment in jest. If
people stop being stupid (i.e., start to think) and/or stop doing stupid
things (i.e., start to think), my criticism goes away. This is not true
of those who attack me, particularly not the last anti-social bastard.
Some see this difference, others do not. Those who see it, generally do
not get into more than one fight, it tends to be short-lived, and they
most certainly do _not_ harbor grudges for decades, but, having started
or continued to think, do figure out what happened. One day, I hope to
be able to figure out which type of person a person is before the posted
"proof" has made it much too abundantly clear.
I, Xah Lee, am also going to quit reading this newsgroup for a while, for i
felt it's more like a fart zone than intellectualization.
My dear lisp comrades, i'm sorry that you'll have to endure whatever ass who
will flame me for my stupid behavior.
However, i may check back six months to see if things have improved. May god
please let me not bump into another farewell saint.
By the way, it has been a long interest of mine to figure out the branches
of Christianity. I have done readings before, but it never got a permanent
footprint in my memory banks what is the difference between Catholic and
Protestant. Perhaps because i regard any form of religion a load of crap,
and particularly so Christianity. I happened to spend an hour today reading
the topic, and it became clear to me that one reason i didn't remember the
difference before is because my understanding of humanity and history is
significantly deeper than the 5 or so years back when i last read about the
ins and outs of Christian God believing sects. One thing that came away with
today's reading, is a good impression of the etymology of Protestant --
those who protested. From this simple mnemonic, i think i should be able to
easily recount an outline of the history of Christianity. Another thing i
also learned today, with some fairly good impression, is where
Fundamentalism originated. You know, them being those who believes that
woman are made out of a rib of man as a playmate and etc cetera.
The reason i happened to read about religion today is because one of my
co-worker, an Indian, is heading back to his home country for vacation.
Since i honestly never had a good look at India on the map, so we looked a
bit using mapquest.com
http://www.mapquest.com/cgi-bin/ia_find?link=school/worldatlas_index&atlas=w
orld
it turns out that mapquest has quick statistical summary of each country in
the world. For the past year the thought has went through my mind which
country is the best to live in. Naturally with my cosmopolitan interests, i
started to go through a few countries that have interested me, and read the
stat in some detail for the first time in my life. One thing let to another
as my behavior pattern, i started to do a basic survey of the wealthy
countries i'm interested in. Not as for picking a dwelling place or future
house purchase, but to satisfy my general interest as well. So, i jotted
down this list:
Country GPD perl capita literacy
Norway $25.1k 100%
Sweden $20.7k 99%
Finland $21.0k 100%
England $21.8k 100%
Ireland $20.3k 98%
Germany $22.7k 99%
Belgium $23.9k 98%
Netherlands $23.1k 99%
Austria $23.4k 98%
Luxembourg $34.2k 100%
France $23.3k 99%
Italy $21.4k 98%
Switzerland $27.1k 99%
USA $33.9k 97%
Canada $23.3k 97%
Japane $23.4k 99%
Signapore $27.8k 91%
Australia $22k 100%
The criterion is basically by wealth. (recall that one of my curiosity is to
see which country makes a better abode) Sloppily i'm basically wrote down
countries where the "GPD as per capita" is above $20000, hopping through the
the world map neighbor by neighbor. (i didn't bother with Africa.) There are
probably countries i've missed; please fill in if so.
Apparently, USA is the richest by far. What surprised me was Luxembourg,
where it is the only other country with more than $30k.
As it so happens, i have been somewhat of a traveler in my teen years. Lead
by my fucking mom and ex-stepdad with my brother and sister, hopping through
Paraguay, Guatemala each about half a year or more, and also a few years in
Canada.
What i really liked, is perhaps a website that has hundreds of random photos
of cities and every streets, restaurants, houses, people. For example, how
does cities and towns and streets in Norway looks like? How it differs from
Sweden, or the neighboring Finland? What's their style? Color? Cost?
(does anyone know a comprehensive website or such that i can check it out?)
ok, i'm rambling. My finger started walking the keyboard, and i might as
well let it run a few miles before i go to bed.
I was saying about trying to find out how different wealthy countries are
like. In particular, i always find Scandinavia very attractive. You know, we
all heard that they have particular open sex views and laws. I forgot if
it's all of them. Supposed they can fuck in daylight street without raising
much eyebrow. Y'now, perhaps it taboo to even mention in US of A, but they
Scans allow child porn too! (an upright person might utter "what the fuck
are these people?") (anyway, just exactly what's their laws on sex, can
anyone tell? I'm quite acquainted with US laws regarding many issues of sex.
(of course i can lookup the web quick, but right now i'm busy writing as i
haven't gotten to my many main points yet.))
Ok, so before i ramble tooo far, let me stop and summarize a few questions:
(1) does any one know a site, or perhaps ever a book, that has lots of
pictures of different wealthy countries befitting to live, introducing
perhaps the people, their cultures, and even law? For the least, i'm
interested to see pictures of different potential places to live.
(2) of my country list above as i talked about: if i missed a country,
please bring attention.
now back to my flow... i was saying that this Indian coworker prompted me to
look at maps, and for many reasons i started to survey all these countries
to sate few of my curiosities that has been around for a while, and for the
first time. Upon looking at the stat summary on mapquest.com's pages, the
stat includes also the country folk's literacy as a percentage, and also
religion. The literacy part turns out less interesting than the GPD, since
basically all wealthy or industrialized countries all have 98% or more
literacy. The other stat caught my eyes is religion. That's when it piqued
me to do a tiny research on the diff between Catholic and Protestant.
(another interesting thing to note today is that the Middle East are almost
100% Muslims. (and American are some %80 Christians. Apparently there's some
serious disagreement here.))
Now, another very interesting question i had for a while in my mind, and
also as part of the reason i'm writing this post is:
(3) Why America is so rich and prosperous?
As one can see from the country list i put above, American is basically the
richest country in the world, by quite far. (I don't know what's the story
with Luxembourg. Is it a special country with special count or something?
(if you know the answer, please do tell.))
Why is America prosperous? Is it because American has higher IQ? No. Is it
they work harder? Hardly. Is it because they have a rich land, rich natural
resource? Maybe... I don't really know the answer. I suppose, the the answer
to this question is long and non-trivial. Is there some general answer,
general consensus among perhaps accomplished economists or other respected
social science scientists? For since about few months ago, an educated guess
forms in my mind. I'm thinking, USA being so prosperous today is largely a
result of capitalism, in combination of good natural resources (land), and a
bit of luck (conquering and appropriation of indigenous American's wealth,
and how WW II turned out.). As a counter to my guess, can anyone come up
with a country that has been totally capitalist? (i.e. laissez-faire,
free-economy.)
I would be interested in answers to the above 3 rough questions.
PS due to some recent debate and pondering, while i was checking out
articles related to Christian from encyclopedias etc, it dawn on me that
America played no small part in harboring atheism. (I guess China is a big
source.) I love it! Go America! land of the free! (i'm an American citizen
by naturalization.)
Xah
x...@xahlee.org
http://xahlee.org/PageTwo_dir/more.html
Feel free to take a hike. I'm here to fulfill your wish.
the truth is, you are just an old man with nothing to do, whose ego is on
the balance of past glory and loneliness. (ain't that the truth?)
i really tire of your verbose mouth, from which effete meta comments keeps
flooding for nothing.
excuse me for not having done my home work, but just how old are you? 60?
70?
let's let all the good guys drop dead on comp.lang.lisp. Leave it to Naggum
and me. Let me count to three, and all you good people disappear, ok?
One,... Two, ... Three!
Xah
x...@xahlee.org
http://xahlee.org/PageTwo_dir/more.html
Shut your fucking face uncle fucka
You're a cock sucking ass licking uncle fucka
You're an uncle fucka, yes its true
Nobody fucks uncles quite like you
Shut your fucking face uncle fucka
You're the one that fucked your uncle, uncle fucka
You dont eat or sleep or mow the lawn,
You just fuck your uncle all day long
You're a boner biting bastard uncle fucka
You're an uncle fucka I must say
Well you fucked your uncle yesterday
Uncle fucka... thats U-N-C-L-E
fuck you Uncle Fuckaaaaaaaaaaaaa tonight...
Suck my balls!
(UNCLE FUCKA copy right 1998ish by Terrance & Phillip)
Xah
x...@xahlee.org
http://xahlee.org/PageTwo_dir/more.html
> From: Andrzej Lewandowski <lewand...@attglobal.net>
> Organization: Global Network Services - Remote Access Mail & News Services
> Newsgroups: comp.lang.lisp
[text elided]
[text elided]
>
> Apparently, USA is the richest by far. What surprised me was Luxembourg,
> where it is the only other country with more than $30k.
i lived near luxembourg (metz france for a year back in 1991) and
visited it several times.
luxembourg have rather lax banking laws (remember the BCCI scandal
back in 1990? i drove past the BCCI headquarters in luxembourg in
1991, so it was there.), and, i presume, low tax rates (gas was
cheaper there than in france). this attacts money, both rich people
and just a general flow of money. when you are near to a large money
flow, some tends to bleed out into your pocket. luxembourg is not
quite independent, they share currency and defense with belgium.
GDP per capita is an *average*. most of the time a median income is
quoted. the income distribution is heavily skewed. wealthy outliers
who make 100 or 1000 times more than the median really drive this
average upwards. since luxembourg is so small, this could almost be a
statistical fluke.
luxembourg is a small country. i think you could find many similar sized
area in any one of the countries you mentioned, which, in itself,
would have a very high average income. for example, draw a luxembourg
sized area around bill gates or micheal eisner and see what the
average income is.
overall, luxembourg is a very nice place to live. i do think their
salaries really are higher in median and average than their
surroundings. however, it is not all *that* special. unless you fit
the international banker profile, you could probably earn just as much
if not more somewhere else. i wouldn't turn a good job in luxembourg
down though. the quality of life there is high.
their sexual mores seem relaxed than in the US, but them the US is a
very prudish country in this topic. they do (or at least did back in
1991) transmit RTL (radio television luxembourg) which featured risqué
shows like a game show where contesents and their models would strip.
hope this helps.
--
J o h a n K u l l s t a m
[kull...@mediaone.net]
Dear Xah,
postings of Kent are _very_ valuable in this newsgroup,
actually if I am in hurry, I concentrate on threads
with a
1- interesting subject
or
2- with a reply of Kent
So if you are not happy and not civilised (as your next msg shows)
just let us in peace here.
Please note that I will not reply to your reply,
since I think that it will be an insult.
Samir
>Dear Andrzej Lewandowski,
>
>
>Shut your fucking face uncle fucka
>You're a cock sucking ass licking uncle fucka
>You're an uncle fucka, yes its true
>Nobody fucks uncles quite like you
>
>Shut your fucking face uncle fucka
>You're the one that fucked your uncle, uncle fucka
>You dont eat or sleep or mow the lawn,
>You just fuck your uncle all day long
>
>You're a boner biting bastard uncle fucka
>You're an uncle fucka I must say
>Well you fucked your uncle yesterday
>Uncle fucka... thats U-N-C-L-E
>fuck you Uncle Fuckaaaaaaaaaaaaa tonight...
>
>
>
>Suck my balls!
>
Mr. Lee, I appreciate your contribution to discussion about Lisp
language and to Lisp community in particular. in recognition of
your contributions now, in the past and in the future, as well as
for for deeply professional nature of these contributions you are
awarded to take honorable place in my Kill File.
With deepest respect, A.L.
>My jesus mother fucking Christ, who is this John Foderaro?
>
>I, Xah Lee, am also going to quit reading this newsgroup for a while, for i
>felt it's more like a fart zone than intellectualization.
>
Is this about LISP?...
A.L.
> No other programming
> language community has been subject to such rampant idiocy after they had
> achieved a standard. People have either left the process or accepted the
> defeat and moved on with their lives
This is simply not true. The C++ community has vastly more dissent about
its standard than the Common Lisp community. To cite but one example,
look at the C++ FAQ some time. There's a whole litany of features (which
are all part of the standard) that are labelled "EVIL". (You can find
references on-line at
http://www.google.com/search?hl=en&q=%22C%2B%2B+faq%22+evil) But somehow
C++ manages to survive. So the suggestion that John is going to do
irrepairable harm to the Lisp community by making a disparaging remark
about LOOP is not supported by the evidence.
E.
> ... Erik Naggum <er...@naggum.net> wrote:
>
> > No other programming
> > language community has been subject to such rampant idiocy after they had
> > achieved a standard. People have either left the process or accepted the
> > defeat and moved on with their lives
>
> This is simply not true. The C++ community has vastly more dissent about
> its standard than the Common Lisp community.
I agree with this part of Erann's analysis.
> ... the suggestion that John is going to do irrepairable harm to the
> Lisp community by making a disparaging remark about LOOP is not
> supported by the evidence.
Well, this claim might or might not be true but I'm not sure it's supported
by the evidence either way. I'll offer evidence that supports the
alternate point of view, and then whether or not you believe any of that,
I'll try to turn the discussion back on track to where I think it should
be, which is: what constitutes conformance. I think it's important that
we come to some consensus about that, because that's not supposed to be
something that's up for debate (much).
To begin with, Franz is a major Lisp vendor, and I often hear the term
"the only lisp vendor" when they're around--I don't know if that's
something they encourage or something they merely tolerate, but I
don't hear them disclaiming the term. (I think Franz is composed of
an ok crew of folks, but I don't think they are the "only" lisp vendor
by any stretch, partly because I believe in the other commecial
vendors, and partly because I use the term vendor broadly to include
non-commercial implementors as well. I find it upsetting to hear this
phrase uttered and moreso to hear it not rebutted when
otherwise-well-informed people are standing around.) But I mention
this perception of exclusivity to to emphasize that some non-trivial
number of non-idiots seem to think that Franz IS the word on Lisp, so
there is a material potential for confusion here. FURTHER, John posts
with @franz.com in his name, and his word is easily confused wiht
Franz's, especially since, again, no one from Franz ever posts to
disclaim his remarks about disclaim and to say expressly that the
formal position of Franz is different than his, nor even that there is
any substantial internal dissent. AND FURTHER, John does play fast
and loose with the term "conforming" when the standard is, as I posted
the other day, really quite clear on what it means to be conforming,
and if he doesn't actively distribute the source to IF* with his code,
then he's not writing conforming, no matter how hard he claims
otherwise. AND FURTHER, in a smaller community like ours, any voice
is, relatively speaking, louder than a voice in the C++ community.
I might cite Microsoft and its sometimes propensity, at least
historically (not sure of their current practice), to create market
disturbance by deviating slightly from standards such as HTML, Java,
etc. on the assertion that they know better, etc. [The analogy of
Franz to Microsoft is imperfect here; don't read "unfair monopoly"
into my remarks about Franz, please--"big" will suffice.] It's hard
to know exactly how to apply the word "damage" to an abstract such as
a market, but I think it's fair to say that Microsoft has had a
splintering effect on the market that is less ignorable by those not
interested in their proprietary changes than would be a similar
deviation from another vendor, which people would almost certainly
reject more harshly if they took the same action.
So your remarks about "dissent" being a tolerable thing are well
taken, and I certainly believe their is and should be room for
dissent. Even people like me, Barry Margolin, Steve Haflich, and
others who were there while it happened are known to voice dissent
of all kinds. But dissent is different than condemnation, and
dissent from a major vendor/supplier rings louder than dissent from
a person on the street.
Erik, of course, speaks more "colorfully" (shall we say) than some of
us might, and ascribes more intent than may be warranted (I can't say);
however, neither of those two things automatically make his observations,
at least on the matter effect, wrong. We'll leave aside intent.
Even if John has no deathwish for CL (who am I to judge?), and even if
Franz does not mean to endorse him by its silence (again, how would I
know?), it can still be the case that a small community is left in
turmoil by being led to believe that it is appropriate to distribute
code that is called "conforming" when it doesn't satisfy the conformance
requirements.
The following paragraph is a major point I've been trying to make that
no one seems to have picked up on:
We had discussions about this very issue in the context of deciding on
the conformance requirements, though it was presented more abstractly.
Someone, I can't remember whom, but not one of the usual core bunch of
regulars, wanted to say that a program was conforming if the program
was capable of running on a conforming processor given some
appropriate compatibility package (which is what John is saying by
saying "go get the code yourself, and this code will run"). The same
can be said for Fortran. I allege (and you'll just have to take my
word for it) that I can write a "compatibility package" that you can
load such that valid FORTRAN will run in CL. I'd have to muck around
with the readtable a little to get it to activate when you just do an
ordinary call to LOAD, but I think it's a pretty straightforward
exercise if one has a fortran->lisp translator handy (and I've done
that before, so maybe you can give me that as a "given"). The
question then becomes--can I claim FORTRAN is conforming CL? The
answer is no. *If* I give you instead, a fortran->lisp translator,
the readtable hackery, and some code in fortran as a single module,
though, and it compiles out of the box with no mods in CL (and meets
any other requirements for conformance that might be irrelevant to
this discussion and glossed over for simplicity), then of course it's
now conforming. Just as a program that reads any data or sets up any
custom syntax is conforming; it doesn't have to be in the reference
syntax to be conforming. It doesn't have to avoid program-defined
macros and functions. It just needs to *include* them itself. It cannot,
according to the rules outlined in the spec, expect the user to go find
or create the appropriate support.
To say otherwise is to potentially confuse the user community from an
apparent position of authority, unless due disclaimers are offered.
None of this should be construed as me just blindly defending Erik's
sometimes over-the-top rhetoric. Just at least some part of his
underlying point.
Drat. I'd meant not to post on this thread any more. Well, the
remarks above about conformance are important enough that I can't just
discard this message, and I'm too exhausted to edit it. Maybe we can
leave aside the personal bickering and turn this thread into a more
useful discussion of conformance issues.
Not only that, but the C++ community has vast armies of programmers who
will never behold a single page of the C++ standard, and who believe the
language to be defined by what is accepted by their compiler and the
run time behavior that results.
The dissent is actually rare, because to dissent requires awareness
that there is a standard, and specific knowledge of what is actually
in it.
[mcuh snippage]
Let me try to distill your long post into a short paraphrase: there is
potential harm done when someone posts disparaging remarks about the
standard wearing the mantle of authority that comes with an email address
from the major vendor. (Let me know if that's not right.)
I actually agree with that. However, I believe that whatever damage John
may have done (which we can guage by looking at the effects of much more
severe crticism from equally authoritative sources in the C++ community)
pales in comparison to the damage that was done by the absurd and extreme
overreactions that followed.
Let me reply to a few of your comments taken out of context:
> Erik, of course, speaks more "colorfully" (shall we say) than some of
> us might, and ascribes more intent than may be warranted (I can't say);
> however, neither of those two things automatically make his observations,
> at least on the matter effect, wrong.
That's true. Behaving like an asshole doesn't necessarily make someone
wrong. (I should know ;-) And in fact I can't prove that Erik is wrong.
Maybe he's right. Maybe John Foderaro has singlehandedly dealt Common
Lisp a crippling blow. Maybe there's something about Lisp that makes it
more vulnerable to individuals voicing negative opinions about it than
C++. I can't prove that these things aren't true. But I can't prove that
aliens haven't abducted people either.
> Even if John has no deathwish for CL (who am I to judge?)
So you believe that the idea that John hates CL is tenable and not absurd
on its face. Tell me then, why would someone who hates CL spend his
career working for a CL vendor?
> [Conforming code] doesn't have to avoid program-defined
> macros and functions. It just needs to *include* them itself. It cannot,
> according to the rules outlined in the spec, expect the user to go find
> or create the appropriate support.
So Allegroserve could be made conforming (assuming it's not, I don't know,
and frankly I don't really care) by the simple inclusion of
#-ALLEGRO(defmacro if* ....)
But that's not the topic at hand. What Erik is ranting about is John's
advocacy of a programming style that avoids the use of standard features
(cond, unless, when, loop) in favor of a non-standard one (if*). It would
not placate Erik's position to have #+ALLEGRO(defmacro if* ...) in the
code.
E.
> So Allegroserve could be made conforming (assuming it's not, I don't know,
> and frankly I don't really care) by the simple inclusion of
> #-ALLEGRO(defmacro if* ....)
Yes, I have said this several times now, and it seems to go unrecognized.
(If you do the above conditional, you have to match it with a corresponding
import of the IF* symbol into your package in the #+Allegro case, btw.
You don't want to depend on it just being there. It's not present in the
CL package.)
> But that's not the topic at hand. What Erik is ranting about is John's
> advocacy of a programming style that avoids the use of standard features
> (cond, unless, when, loop) in favor of a non-standard one (if*). It would
> not placate Erik's position to have #+ALLEGRO(defmacro if* ...) in the
> code.
Maybe. Maybe not. I would switch sides in the argument if John
acceded and did things by the standard. And I'm not convinced Erik
wouldn't back down on this either, frankly. What raises this to the
level of "advocacy" is that it forces people to confront the missing
piece and to voluntarily download this other library as if it were
reasonable to suppose that it were a separate platform, and that the
bug was on the part of the consumer (for not running that platform)
instead of on the part of the programmer (for not including all the
code needed to run their so-called conforming system). There's tons
of junk that neither Erik nor anyone fusses about in a lot of the code
that's shared back and forth and that looks much worse than IF*. What
makes those other packages unobjectionable is not always the good
taste of the authors in their choice of macros and functions, but the
proper use of packages to partition their personal choices into a
place where it doesn't affect anyone who isn't asking for it.
Please can we not talk about the personal side of this any more and can we
instead focus on the conformance issue. No one has either agreed or
disagreed with my claims as to what constitutes conformance in this case.
Silence on an important issue like that makes me nervous.
I agree with your claim of what makes a conforming program. I think
people who want to make claims about conformance should have language
something like:
This program, when combined with the code available from xxx, and
apart from the code contained in files yyy and zzz whcih contains
wrappers around implementation-dependent functionality, is intended to
be conforming CL.
(of course you need to define what `combined with' means - does it
mean
it has to be preloaded or ...).
I tend to use explicit USE lists for DEFPACKAGE to make this clearer
for myself - rather than
(defpackage :mypackage
;; Everything works fine in tfb-cl but it will break in mere CL
systems...
(:export ...))
I say
(defpackage :mypackage
(:use :cl) ; note, *only* CL
;; Now here are the nonconformances
;; we need tfb-hax for things like ABEND-PROTECT
(:use :tfb-hax)
...)
--tim
> What raises this to the level of "advocacy" is that it forces people
> to confront the missing piece and to voluntarily download this other
> library as if it were reasonable to suppose that it were a separate
> platform, and that the bug was on the part of the consumer (for not
> running that platform) instead of on the part of the programmer (for
> not including all the code needed to run their so-called conforming
> system).
The point John tried to make (as I understood it) is that he writes
the software for one platform only (Allegro CL) and if anybody tries
to port it to other platforms, the conditional macro is the smallest
and easiest part of porting effort, and he never claimed the software
as being or purporting to be conforming to ANSI Common Lisp.
Someone mentioned that making dependencies on platform-specific stuff
that is not in the standard is ok (sockets and threading, for
example), but that depending on something that is just a standard
stuff in disguise is not (the famous historical conditional from Franz
Lisp).
> There's tons of junk that neither Erik nor anyone fusses about in a
> lot of the code that's shared back and forth and that looks much
> worse than IF*.
People shoud be able to discuss what is junk and what is not. And
someone might sometime volunteer to get rid of the junk.
> What makes those other packages unobjectionable is not always the
> good taste of the authors in their choice of macros and functions,
> but the proper use of packages to partition their personal choices
> into a place where it doesn't affect anyone who isn't asking for it.
But in the code that was under discussion, we see the following:
;;- This code in this file obeys the Lisp Coding Standard found in
;;- http://www.franz.com/~jkf/coding_standards.html
I see this as:
This code in this file obeys what I think should have been a
Common Lisp standard, differences from Common Lisp described in
[uri above].
Users may modify the code but _must_ obey that coding standard, which
is not The Common Lisp Standard (the ANSI one, because there is no
other). And hence if anyone thinks it's junk in there, they are not
free to improve it or even discuss whether something is an improvement
-- you either obey what the author thinks is best or go code something
else.
> Please can we not talk about the personal side of this any more and
> can we instead focus on the conformance issue.
I'm trying not to talk about this personally, just to see how others
see this.
> No one has either agreed or disagreed with my claims as to what
> constitutes conformance in this case. Silence on an important issue
> like that makes me nervous.
My position on this is that bringing stuff from old dialects of Lisp
back into Common Lisp is bad at least for the reason that the standard
should have freed us from wanting to do this. (Was it not the purpose
of the Common Lisp standard to have a common Lisp platform instead of
many, differing in some details, Lisps of the time?)
Some people here argue that if they can create their favorite Lisp
dialect of past in a conforming Common Lisp program then it is good to
do it. I think it is not.
----
I may be not grasping the level at which you wanted this discussion to
evolve, but we cannot move to higher levels until the issues at lover
levels are not settled down. If we all agree that _Commn Lisp_ is the
base from which we move on then we can move on. People who think that
Common Lisp should be changed before we move on should either rethink
their values and accept The Standard as a starting point or create
another community and leave Common Lisp alone. The acceptance of
Common Lisp as the authority should have been implicit for people
wanting to be a part of the Common Lisp community, but it seems that
somehow some people don't understand it.
--
Janis Dzerins
Eat shit -- billions of flies can't be wrong.
the fact that you are right is so obvious, that posting a message saying
just that appears to be a waste.
What makes _me_ nervous is that I posted _twice_ about
(make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
(should it return #p"/HOME/KENT/foo" like in CMUCL and ACL or
#p"/home/kent/foo" as in LW) and _nobody_ answered _anything_.
You said on <clisp-list> that you support the LW way and offered a
reasonable argument and said that you are interested in the opposing
rationale. Isn't this _the_ forum for such a discussion?
--
Sam Steingold (http://www.podval.org/~sds)
Keep Jerusalem united! <http://www.onejerusalem.org/Petition.asp>
Read, think and remember! <http://www.iris.org.il> <http://www.memri.org/>
Live Lisp and prosper.
> > * In message <sfwn11i...@shell01.TheWorld.com>
> > * On the subject of "Re: I'm outta here..."
> > * Sent on Tue, 20 Nov 2001 02:06:31 GMT
> > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> >
> > g...@jpl.nasa.gov (Erann Gat) writes:
> >
> > > So Allegroserve could be made conforming (assuming it's not, I don't know,
> > > and frankly I don't really care) by the simple inclusion of
> > > #-ALLEGRO(defmacro if* ....)
> >
> > Yes, I have said this several times now, and it seems to go
> > unrecognized.
> >
> > can we instead focus on the conformance issue. No one has either
> > agreed or disagreed with my claims as to what constitutes conformance
> > in this case. Silence on an important issue like that makes me
> > nervous.
>
> the fact that you are right is so obvious, that posting a message saying
> just that appears to be a waste.
>
> What makes _me_ nervous is that I posted _twice_ about
>
> (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
>
> (should it return #p"/HOME/KENT/foo" like in CMUCL and ACL or
> #p"/home/kent/foo" as in LW) and _nobody_ answered _anything_.
>
> You said on <clisp-list> that you support the LW way and offered a
> reasonable argument and said that you are interested in the opposing
> rationale. Isn't this _the_ forum for such a discussion?
It's a forum, certainly, but not necessarily one that's read by many
implementors.
Speaking as a user, though, your example above is misleading, as at
least here (Debian CMUCLs 2.4.19 and 3.0.4):
* (make-pathname :name "FOO" :case :common :defaults #p"/home/kent/")
#p"/home/kent/foo"
As I think everyone expects.
Are you basing your queries on the tests I posted a few months ago?
Could you give me a reference?
Thanks,
Christophe
--
Jesus College, Cambridge, CB5 8BL +44 1223 510 299
http://www-jcsu.jesus.cam.ac.uk/~csr21/ (defun pling-dollar
(str schar arg) (first (last +))) (make-dispatch-macro-character #\! t)
(set-dispatch-macro-character #\! #\$ #'pling-dollar)
> Kent M Pitman <pit...@world.std.com> writes:
>
> > What raises this to the level of "advocacy" is that it forces people
> > to confront the missing piece and to voluntarily download this other
> > library as if it were reasonable to suppose that it were a separate
> > platform, and that the bug was on the part of the consumer (for not
> > running that platform) instead of on the part of the programmer (for
> > not including all the code needed to run their so-called conforming
> > system).
>
> The point John tried to make (as I understood it) is that he writes
> the software for one platform only (Allegro CL) and if anybody tries
> to port it to other platforms, the conditional macro is the smallest
> and easiest part of porting effort, and he never claimed the software
> as being or purporting to be conforming to ANSI Common Lisp.
I had been pretty certain I've seen him say otherwise and start to get
into claims about conformance. I did a google search and couldn't find
the reference so might be mistaken.
> > No one has either agreed or disagreed with my claims as to what
> > constitutes conformance in this case. Silence on an important issue
> > like that makes me nervous.
>
> My position on this is that bringing stuff from old dialects of Lisp
> back into Common Lisp is bad at least for the reason that the standard
> should have freed us from wanting to do this. (Was it not the purpose
> of the Common Lisp standard to have a common Lisp platform instead of
> many, differing in some details, Lisps of the time?)
This is certainly one of the reasons. Although in a maleable language,
like Lisp is, you have to expect some private divergence. I think it's
a blurry line between what is a big enough thing to pervade the culture
and what's reasonable personal choice. Part of the issue is that this
is one of those asymmetric issues that people simply value differently,
so it's hard for people to meet eye to eye on it.
Historically I believe the key driving reason was to keep ARPA from
picking Interlisp as its language of choice, because it was deployed
more places than the various incompatible little MACLISP-like dialects
were. Only by getting those dialects to unify was it apparent that
the unified community was bigger and stronger than the Interlisp
community. So we managed to soundly trounce Interlisp, probably more
than we should have, since I'm sure a lot of culture and ideas were
lost. But, in effect, even this part of the reason for CL implies
"yes" to your question. ON THE OTHER HAND, their concern was plug
compatibility, not programmer mindshare. They wanted to farm out one
task to one university and another to another university and not end
up with a Tower of Babel with nothing plugging together. I don't
think IF* would have been historically threatening in that sense, at
least not all by itself. Indeed, the other programming language
communities solved this problem by creating the "linked library" model
that allowed them to take utterly different programming language and
link them together in callable modules that were (mostly) plug
compatible and industry accepted that as "good enough". So programmer
mindshare could be empirically seen as a secondary concern to plug
compatibility, at least given the data I'm focused on.
> Some people here argue that if they can create their favorite Lisp
> dialect of past in a conforming Common Lisp program then it is good to
> do it. I think it is not.
I don't know about good. I think it's not automatically bad. But I
think people will reasonably differ on this and in some sense it's a
community issue, not an individual issue. Nor is it one that the market
must all agree on.
I think it's most improtant just to keep clear what kind of compatibility
and conformance claims are attached to different things we distribute so
that people aren't surprised. I think surprise is the real problem to
be managed.
> I may be not grasping the level at which you wanted this discussion to
> evolve, but we cannot move to higher levels until the issues at lover
> levels are not settled down. If we all agree that _Commn Lisp_ is the
> base from which we move on then we can move on. People who think that
> Common Lisp should be changed before we move on should either rethink
> their values and accept The Standard as a starting point or create
> another community and leave Common Lisp alone. The acceptance of
> Common Lisp as the authority should have been implicit for people
> wanting to be a part of the Common Lisp community, but it seems that
> somehow some people don't understand it.
I do agree that a community-wide discussion about whether the base is
right will hold us back from moving ahead for yet another entire human
generation. And I think that will surely kill the community. I think
there's room for people to privately make their own exceptions to what
the designers did--we built that capability in on purpose as an apology
to people whose wishes we trampled. But I think at the same time that
the standard is "good enough" and linguistically accomodates dissent
far better than other languages do. Just try to get Java to "pretend
otherwise" when you don't like some decision its designers made...
this is irrelevant - there aren't many implementors anyway (and it's good!)
it is read by the user community though, and it is here that the
consensus should be worked on.
> Are you basing your queries on the tests I posted a few months ago?
yes.
> Could you give me a reference?
not really. your tests are a black box - very hard to use.
I asked you to convert them to a more "splittable" format, like those
in CLISP/tests or CLOCC/src/tools/ansi-test or CLOCC/src/tools/clunit.
I used a bad example - what about this one:
(pathname-type
(make-pathname :defaults (make-pathname :directory
'(:relative :wild-inferiors)
:type "foo" :case :common)
:host "CL-LIBRARY" :case :common))
==>
"FOO" or "foo"??
--
Sam Steingold (http://www.podval.org/~sds)
Keep Jerusalem united! <http://www.onejerusalem.org/Petition.asp>
Read, think and remember! <http://www.iris.org.il> <http://www.memri.org/>
Computers are like air conditioners: they don't work with open windows!
Sam Steingold <s...@gnu.org> writes:
> > * In message <sfwn11i...@shell01.TheWorld.com>
> > * On the subject of "Re: I'm outta here..."
> > * Sent on Tue, 20 Nov 2001 02:06:31 GMT
> > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> >
> > can we instead focus on the conformance issue. No one has either
> > agreed or disagreed with my claims as to what constitutes conformance
> > in this case. Silence on an important issue like that makes me
> > nervous.
>
> the fact that you are right is so obvious, that posting a message saying
> just that appears to be a waste.
>
> What makes _me_ nervous is that I posted _twice_ about
>
> (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
>
> (should it return #p"/HOME/KENT/foo" like in CMUCL and ACL or
> #p"/home/kent/foo" as in LW) and _nobody_ answered _anything_.
>
> You said on <clisp-list> that you support the LW way and offered a
> reasonable argument and said that you are interested in the opposing
> rationale. Isn't this _the_ forum for such a discussion?
Ok, here's how I _think_ MAKE-PATHNAME works. No, I didn't test this.
And yes, I may have made an error here so _please_ question any
confusing parts:
(defun make-pathname (&key (host nil host-p)
(device nil device-p)
(directory nil directory-p)
(name nil name-p)
(type nil type-p)
(version nil version-p)
(case :local) ;ugh - code nonportable by default
(defaults (system::raw-make-pathname
:host (pathname-host
*default-pathname-defaults*)
:device nil
:directory nil
:name nil
:type nil
:version nil)))
(let ((default-pathname (pathname defaults)) ;resolve designator
(new-pathname (system::raw-make-pathname))) ;all inits done below
(if host-p
(setf (pathname-host new-pathname :case case) host)
(setf (pathname-host new-pathname :case :common)
(pathname-host default-pathname :case :common)))
(if device-p
(setf (pathname-device new-pathname :case case) device)
(setf (pathname-device new-pathname :case :common)
(pathname-device default-pathname :case :common)))
(if directory-p
(setf (pathname-directory new-pathname :case case) directory)
(setf (pathname-directory new-pathname :case :common)
(pathname-directory default-pathname :case :common)))
(if name-p
(setf (pathname-name new-pathname :case case) name)
(setf (pathname-name new-pathname :case :common)
(pathname-name default-pathname :case :common)))
(if type-p
(setf (pathname-type new-pathname :case case) type)
(setf (pathname-type new-pathname :case :common)
(pathname-type default-pathname :case :common)))
(setf (pathname-version new-pathname)
(if version-p
version
(pathname-version default-pathname)))
new-pathname))
In particular, I believe the :case argument applies only to the transform
space from free-floating fragments into slot components. Once in the
slot, they should forever after be shuttled among pathnames both here and
in MERGE-PATHNAMES by lifting them with :case :common and storing again
in :case :common [or (he says cryptically) some other
case-caonicality-preserving mechanism].
Are the _features_ marked evil or their _syntax_? Are they _fundamental_
to the language as seen by programmers? Can introductory textbooks on
C++ still be used to learn the language they see used in open source code?
| So the suggestion that John is going to do irrepairable harm to the Lisp
| community by making a disparaging remark about LOOP is not supported by
| the evidence.
It is not just about loop. However, I am not surprised that you say it
is, because you would have had to supoort my point of view if you had
focused on if*. So I simply take this intentional misleading comment to
mean that you support me on the if* issue. Thank you.
Replace "avoid" with "forbids" and maybe you get the point. Sigh.
None of this would ever have come up as an issue if he had said he wrote
and posted programs in Foderaro Lisp, which is what he is really doing.
It looks like Common Lisp the same way Microsoft's languages look like
the standard -- not quite.
| Users may modify the code but _must_ obey that coding standard, which is
| not The Common Lisp Standard (the ANSI one, because there is no other).
| And hence if anyone thinks it's junk in there, they are not free to
| improve it or even discuss whether something is an improvement -- you
| either obey what the author thinks is best or go code something else.
Excellent point that has not been made explicit until now. Thanks.
| Some people here argue that if they can create their favorite Lisp
| dialect of past in a conforming Common Lisp program then it is good to
| do it. I think it is not.
I agree.
| If we all agree that _Commn Lisp_ is the base from which we move on then
| we can move on. People who think that Common Lisp should be changed
| before we move on should either rethink their values and accept The
| Standard as a starting point or create another community and leave Common
| Lisp alone.
This would not have been a problem if it were not for the weird desire to
name the new community "Common Lisp". However, there are always those
who think they can steal the momentum of the good name of something they
want to destroy and replace.
| The acceptance of Common Lisp as the authority should have been implicit
| for people wanting to be a part of the Common Lisp community, but it
| seems that somehow some people don't understand it.
There is a difference between accepting something _as_ an authority and
accepting everything it says as authoritative. This is an important
distinction that Paul Foley helped me realize was not made explicit. The
latter is simply wrong -- but I do not think anybody actually _does_ that
except to accuse others of it. That is, if you say you accept the law
_as_ the authority on public conduct in a society, someone who does not
accept the law _as_ an authority will typically argue that you should not
accept everything it says as _right_. Our perpetrator does exactly that
and it did not even occur to me just _how_ sinister this was: It means
that you cannot accept someone or somethinig _as_ an authority unless you
agree to everything they say, making infallibility a prerequisite for
authority, which is simply so insane that nobody _should_ be able to come
to this conclusion on their own, but again, some people tend to think
that other people believe insane things so they are easier to fight.
This prerequisite of infallibility is fantastically destructive to the
very fabric of a reasonable society, but many religions incorporate it.
This is why the perpetrator thinks that Common Lisp is a religion and a
cult to those who accept the standard _as_ the authority. To him, to
disagree with an authority means to dethrone and reject it. Since this
is so nuts as to be excluded from the conversation among reasonable men,
anyone who actually believes something like this is very destructive.
This "accept the standard as authority" is what I have meant by "respect
for the standard". You can respect someone while disagreeing with them.
You can respect the police even while arguing against their behavior, but
if you just get mad at police in general and start to fight the police
for no better reason that they _are_ the police, it is not _disagreement_
that you should be prepared to defend yourself against. Curiously, it is
precisely with "disagreement" that our perpetrator has tried to summarize
his conflicts with those who uphold the standard _as_ the authority. We
should not buy into this line of argument at all. If you reject the only
authority in a community because you disagree with it, it is not because
of your "disagreement" that people object to your behavior, it is because
the whole community reverts to anarchy and is filled with uncertainty,
loss of stability, and absence of trust in the vendors in the market.
If there is _one_ thing that the Common Lisp community must have more
than any other community, it is trust in its vendors and respect for its
standard. The language community is too small to sustain splinter groups
and fragmentation. A vendor who answers to nobody, but which is willing
to "go their own way" regardless of consequences and objections is hard
to trust to do things right, to correct mistakes, etc. If they "answer
to their customers", it only means that customers who do not want the
standard behavior are valued higher than those who do -- that particular
terminology has forever been usurped by Microsoft to mean disrespect for
any authority that is not themselves. It also means they are unlikely to
fix conformance bugs upon which some _past_ customers have based their
applications that are valued higher than future customers who cannot base
their applications on their lack of conformance. This is _not_ what the
Common Lisp community needs to survive.
> * Erann Gat
> | This is simply not true. The C++ community has vastly more dissent about
> | its standard than the Common Lisp community. To cite but one example,
> | look at the C++ FAQ some time. There's a whole litany of features (which
> | are all part of the standard) that are labelled "EVIL".
>
> Are the _features_ marked evil or their _syntax_? Are they _fundamental_
> to the language as seen by programmers? Can introductory textbooks on
> C++ still be used to learn the language they see used in open source code?
Actually, I think they're marked as "evil uses" of feature X, which is
a very different thing. Although I wouldn't call using APPEND to
collect into a list "evil", I also don't have very nice things to say
about it :-). That doesn't mean APPEND shouldn't be in the langauge,
nor that there's anything wrong with APPEND, just that there are
stupid ways it can be used. [I admit, I'm not very familiar with the
C++ FAQ, so maybe there are language features marked "evil" as well,
but I remember seeing that in reference to #define, as in "evil use
#1, #2, ...".]
--
/|_ .-----------------------.
,' .\ / | No to Imperialist war |
,--' _,' | Wage class war! |
/ / `-----------------------'
( -. |
| ) |
(`-. '--.)
`. )----'
> What makes _me_ nervous is that I posted _twice_ about
>
> (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
>
> (should it return #p"/HOME/KENT/foo" like in CMUCL and ACL or
> #p"/home/kent/foo" as in LW) and _nobody_ answered _anything_.
Sorry I missed your posts but LW/Linux does something different.
CL-USER 8 > (lisp-implementation-type)
"LispWorks"
CL-USER 9 > (lisp-implementation-version)
"4.1.20"
CL-USER 10 > (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
#P"/home/kent/"
--
Lieven Marchand <m...@wyrd.be>
She says, "Honey, you're a Bastard of great proportion."
He says, "Darling, I plead guilty to that sin."
Cowboy Junkies -- A few simple words
> Sam Steingold <s...@gnu.org> writes:
>
> > What makes _me_ nervous is that I posted _twice_ about
> >
> > (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
> >
> > (should it return #p"/HOME/KENT/foo" like in CMUCL and ACL or
> > #p"/home/kent/foo" as in LW) and _nobody_ answered _anything_.
>
> Sorry I missed your posts but LW/Linux does something different.
>
> CL-USER 8 > (lisp-implementation-type)
> "LispWorks"
>
> CL-USER 9 > (lisp-implementation-version)
> "4.1.20"
>
> CL-USER 10 > (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
> #P"/home/kent/"
In LispWorks (both Linux and Windows) 4.2 Beta, it returns #P"/home/kent/foo"
At issue is whether that "consistent style" is compatible with the
standard or at direct odds with it. The issue is not if* and extended
loop. Extended loop can be emulated with simple loop, which sometimes is
a good idea, but is mostly just nuts qua requirement of a "style". At
issue is the _prohibition_ against when, unless, if, and cond, the
_standard_ conditionals, which makes a world of difference. If people
were free to use all these, it would be an issue of misguided personal
preferences, nothing more. With the prohibition against use of standard
conditionals, it is something quite a bit more sinister in nature.
| If I were to submit code that consistently used
|
| (if test (progn ...) (progn ...))
|
| to a project you were maintaining, would you accept it?
Have you never heard of coding standards before this incident?
| (2) Users may make any modifications permitted by the license under which
| Foderaro released the code. That license says nothing vaguely related to
| the claims above.
Yes, it does. Its amazingly stupid "coding standards" document appeals
to the same kind of sense of community that the GNU Coding Standards and
any other _serious_ and _competent_ coding standards documents do, but it
is in fact nothing but one, lone anti-social rebel without a clue who has
written down a few of his personal issues with the standard.
| Your only legitimate point is that apparently you won't be able to
| cooperate closely with Foderaro, since you are not willing to make
| contributions in a style consistent with the rest of his project.
Anyone who has learned Common Lisp from any available textbooks will be
unable to contribute. Asking people to refrain from using non-standard
cruft is one thing, but asking people to refrain from standard operators
is quite different. In effect, this anti-social nutcase is saying that
"if you know Common Lisp, you are not welcome here".
| This is Lisp. Lisp has macros. Learn to deal with it. The community is
| much better off when anybody who wants to contribute free Lisp software
| feels welcome to do so on terms that they find comfortable.
If only they could be mature enough to understand that people are equally
free to voice their opinions about what they have done. That is not the
case: Disagreement with his disagreement with if, when, unless, cond, and
loop is forbidden. He exploits one level of freedom and then closes the
door on those who want to exercise theirs. Why is he unable to deal with
people who use _their_ preferred macros? Why should everybody dance to
his tune and he flatly reject everybody else? This anti-social attitude
is at the core of this "discussion", not the _specific_ macro silliness.
Specifically, if I wanted when and unless and implemented them with if*,
would that be acceptable? If not, the something is _really_ wrong with
our anti-social "the world is barely big enough for me" dude.
> g...@jpl.nasa.gov (Erann Gat) writes:
> > But that's not the topic at hand. What Erik is ranting about is John's
> > advocacy of a programming style that avoids the use of standard features
> > (cond, unless, when, loop) in favor of a non-standard one (if*). It would
> > not placate Erik's position to have #+ALLEGRO(defmacro if* ...) in the
> > code.
>
> Maybe. Maybe not. I would switch sides in the argument if John
> acceded and did things by the standard. And I'm not convinced Erik
> wouldn't back down on this either, frankly. What raises this to the
> level of "advocacy" is that it forces people to confront the missing
^^^^^^^^^
> piece and to voluntarily download this other library as if it were
> reasonable to suppose that it were a separate platform, and that the
> bug was on the part of the consumer (for not running that platform)
> instead of on the part of the programmer (for not including all the
> code needed to run their so-called conforming system).
People are only "forced" to "confront the missing piece" *IF* they choose
to run Allegroserve on a non-Allegro platform. That's a big IF* :-) But
yes, you're right. If someone wants to take advantage of the free
software provided by Franz on a platform other than the one that they sell
then they have some (very minor) issues they have to address. So what?
* Erik Naggum:
> Replace "avoid" with "forbids" and maybe you get the point. Sigh.
The idea that it is John's intention to "force" anyone to do anything or
"forbid" anyone from doing anything is at odds with what he actually says:
* John Foderaro:
> It's a programming language folks!! It's a tool to get a job done.
> Use it any way you want and don't let anyone tell you differently.
Sounds like he's advocating the exact opposite of what you and Erik are
claiming.
> Please can we not talk about the personal side of this any more and can we
> instead focus on the conformance issue. No one has either agreed or
> disagreed with my claims as to what constitutes conformance in this case.
> Silence on an important issue like that makes me nervous.
Perhaps it would help if you reiterated succinctly what you think the
conformance issue is. I've been silent about it because it seems like a
non-issue to me. Yes, Allegroserve does not conform to the standard, but
the non-conformance is relatively minor and easily remedied. I haven't
seen John say anything different. What exactly is the problem here? The
only problem I see is people making mountains out of molehills.
E.
Sigh. I am beginning to think you are intentionally obtuse just to play
another one of your stupid games. Find a quote where he responds to a
question on what he would do if you got code with the forbidden forms,
indeed, what he wants to do with the code he has received from his
colleagues who have used the forbidden forms. Do you remember the stupid
"Lisp Coding Standards" document, still at version 1.0, which very, very
strongly discourages certain forms. It is quite useless to try to argue
that these things did not actually happen just because it would kill you
to agree with me on _anything_.
Anyone that uses any of the software that John Foderaro changes over
to conform with his "Lisp Coding Standards" has to live with the
notion that rather than using Actually Standard CL Constructs like IF,
WHEN, UNLESS, and COND, the code is liable to get changed to use IF*.
> * Erik Naggum:
>
> > Replace "avoid" with "forbids" and maybe you get the point. Sigh.
>
> The idea that it is John's intention to "force" anyone to do anything or
> "forbid" anyone from doing anything is at odds with what he actually says:
>
> * John Foderaro:
>
> > It's a programming language folks!! It's a tool to get a job done.
> > Use it any way you want and don't let anyone tell you differently.
> Sounds like he's advocating the exact opposite of what you and Erik
> are claiming.
But his "Lisp Coding Standards" read rather differently.
"Now that we've introduced if* here are the coding rules;
1. Use if* in place of if, when, unless, and cond."
He of course puts, at the top of the web page, all the appropriate
disclaimers needed to insure that nobody gets sued.
Just like if you head to the typical web site of one of the "tax
protestor" wackos, you'll generally see a disclaimer to the effect
that "Oh, no, we're not really offering you legal advice!" (Whilst
giving legal advice is the only conceivable purpose of the exercise.)
> > Please can we not talk about the personal side of this any more
> > and can we instead focus on the conformance issue. No one has
> > either agreed or disagreed with my claims as to what constitutes
> > conformance in this case. Silence on an important issue like that
> > makes me nervous.
> Perhaps it would help if you reiterated succinctly what you think
> the conformance issue is. I've been silent about it because it
> seems like a non-issue to me. Yes, Allegroserve does not conform to
> the standard, but the non-conformance is relatively minor and easily
> remedied. I haven't seen John say anything different. What exactly
> is the problem here? The only problem I see is people making
> mountains out of molehills.
The problem is that he's made up his own idiosyncratic conditional
macro, and proposes "making code more readable" by using it in lieu of
the control structures that are:
a) Actually standardized in Lisp;
b) Documented in texts;
c) Agreed upon by more than one person.
The thing that I find fairly hilarious about it is that Foderaro gets
all critical about how "awful" LOOP is (see Rule #2) when he's done
much the same thing by creating a keyworded "IF".
--
(concatenate 'string "chris" "@cbbrowne.com")
http://www.cbbrowne.com/info/xwindows.html
Rules of the Evil Overlord #107. "Even though I don't really care
because I plan on living forever, I will hire engineers who are able
to build me a fortress sturdy enough that, if I am slain, it won't
tumble to the ground for no good structural reason."
<http://www.eviloverlord.com/>
> > CL-USER 10 > (make-pathname :name "FOO" :case :common :defaults #P"/home/kent/")
> > #P"/home/kent/"
>
> In LispWorks (both Linux and Windows) 4.2 Beta, it returns #P"/home/kent/foo"
It also returns #P"/home/kent/foo" in 4.1.20 (with a lot of private
patches, but none of them are supposed to do anything with pathnames)
on *Solaris*.
--
(espen)
> Find a quote where he responds to a
> question on what he would do if you got code with the forbidden forms,
> indeed, what he wants to do with the code he has received from his
> colleagues who have used the forbidden forms.
Why should I do your legwork for you, particularly when you have been so
vocal in berating people who have expected you to do their legwork for
them?
> Do you remember the stupid
> "Lisp Coding Standards" document, still at version 1.0, which very, very
> strongly discourages certain forms. It is quite useless to try to argue
> that these things did not actually happen just because
I did not say these things didn't happen. Yes, John wrote a coding
standards document. Yes, he put it on the Web. Yes, he said that if
anyone wrote code for Allegroserve that didn't conform to his coding
standards that he'd probably change it when he found the time. We don't
disagree on this.
BTW, a quote from you seems appropriate here:
* Erik Naggum:
you don't even read what I wrote, preferring to read into it whatever you
like, so tell me why your fantasy is of any concern to me before you want
me to become part of it.
merely refrain from annoying me with more of your pathetic blathering,
and there will be less noise -- it's that simple,
> it would kill you to agree with me on _anything_.
It seems to me that train runs both ways. But let's see:
I don't like if*. I do like the standard control constructs, including loop.
<pause>
What do you know? I've actually agreed with you five times in one article
and I'm still alive.
E.
I have? Could you please do the "legwork" and show me how you arrived at
this nutball conclusion?
| BTW, a quote from you seems appropriate here:
Glad to see you know how to use search engines. The concept of context
is forever lost on the crazy who think that the answer is in text
searches. I bet you even have your own archive of my articles so you can
be more efficient in finding "incriminating" evidence. Nutcasese who do
this virtually _flood_ USENET.
| What do you know? I've actually agreed with you five times in one
| article and I'm still alive.
Too bad.
> > So what?
> Anyone that uses any of the software that John Foderaro changes over
> to conform with his "Lisp Coding Standards" has to live with the
> notion that rather than using Actually Standard CL Constructs like IF,
> WHEN, UNLESS, and COND, the code is liable to get changed to use IF*.
Yes. Anyone who uses any code that anyone has changed to suit their
personal coding style has to live with that coding style. I say again: so
what?
> But his "Lisp Coding Standards" read rather differently.
>
> "Now that we've introduced if* here are the coding rules;
>
> 1. Use if* in place of if, when, unless, and cond."
>
> He of course puts, at the top of the web page, all the appropriate
> disclaimers needed to insure that nobody gets sued.
>
> Just like if you head to the typical web site of one of the "tax
> protestor" wackos, you'll generally see a disclaimer to the effect
> that "Oh, no, we're not really offering you legal advice!" (Whilst
> giving legal advice is the only conceivable purpose of the exercise.)
That's right. I say a third time: so what?
> The problem is that he's made up his own idiosyncratic conditional
> macro, and proposes "making code more readable" by using it in lieu of
> the control structures that are:
>
> a) Actually standardized in Lisp;
> b) Documented in texts;
> c) Agreed upon by more than one person.
Why is that a problem? So he's done all this stuff. A fourth time: so what?
> The thing that I find fairly hilarious about it is that Foderaro gets
> all critical about how "awful" LOOP is (see Rule #2) when he's done
> much the same thing by creating a keyworded "IF".
I agree, it's hillarious. But for the fifth time, so what?
What I can't figure out is: where's the harm? I've seen claims ranging
from the proposition that John is fracturing the community to the idea
that he wants to destroy the language out of some deep-seated hatred
(which is so absurd I'm embarrassed to even be repeating it). The
community-fracturing idea is not absurd on its face, but is at odds with
the evidence that we see from other language communities.
If there is any harm being done here it seems to me it's in the
credibility we lose by spending so much time arguing over such
trivialities.
E.
The reason you have such problems seeing the harm is that you have made
up your mind long ago that it would be abusrd to want to do harm and that
nobody would do the absurd, but this is wrong. Such is the nature of the
problem that nutcases _do_ what seemingly normal people think is absurd.
>On Sat, 17 Nov 2001 14:07:34 GMT, Xah Lee <x...@best.com> wrote:
>
>>My jesus mother fucking Christ, who is this John Foderaro?
>>
>>I, Xah Lee, am also going to quit reading this newsgroup for a while, for i
>>felt it's more like a fart zone than intellectualization.
>>
>
>Is this about LISP?...
No, it's about a troll that shows up in cll from time to time. Ignore him.
--
Fernando RodrÃguez
frr at wanadoo dot es
--
> on its face. Tell me then, why would someone who hates CL spend his
> career working for a CL vendor?
"Hate" is a strong word, maybe "doesn't care" is a better description.
Maybe he want's to be the next Anders Hejlsberg (sp?) and wants
Allegro CL to be the next Borland Delphi? That's a perfectly valid
goal for a for-profit company. However, if this really is the goal
than I'd like to see this stated as a public goal.
Okay, I have to finish, it's time for soccer... :-)
Dear Fernando Rodriguez and readers,
you wrote:
> No, it's about a troll
> that shows up in cll from time to time. Ignore him.
You are accusing me of being a USENET troll.
May i be a troll, but sometimes i think that my learning and issues and the
bag of fire inside of me are too important for the progress of society to
avoid appearances just because i might be called a troll. Sincerely, mind
you, that i was either not going to reply, or going to launch into very
serious issues about religion, and/or history of Europe, and torture, which
will surely educate and as well as offend egregiously. The anger and
injustice in me is such a potent impulse, but anyway i've decided to be
light-hearted this time, and focus on the subject of trolling.
If you think i'm a troll, then you should know that the best response to a
troll is to not respond. You are now a victim of troll.
i wonder how many readers here really understanding the term _troll_, and
i'm certain that the majority have very little knowledge of the subject.
Acquaint yourself with online dictionaries:
dictionary.com
merriam-webster.com (m-w.com)
You see that there are few predominant meanings:
1. to fish by trailing a lure or baited hook from a moving boat.
2. a Scandinavian folklore creature, mischievous dwarf-type that dwells
under bridges or hills.
3. to stroll, patrol, wander, ramble
I can see that it all can contribute to the etymology of usenet troll.
now look at Jargon File's explanation:
http://info.astrian.net/jargon/terms/t/troll.html
http://www.tuxedo.org/~esr/jargon/html/entry/troll.html
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
troll
1. v.,n. [From the Usenet group alt.folklore.urban] To utter a posting on
Usenet designed to attract predictable responses or flames; or, the post
itself. Derives from the phrase "trolling for newbies" which in turn comes
from mainstream "trolling", a style of fishing in which one trails bait
through a likely spot hoping for a bite. The well-constructed troll is a
post that induces lots of newbies and flamers to make themselves look even
more clueless than they already do, while subtly conveying to the more savvy
and experienced that it is in fact a deliberate troll. If you don't fall for
the joke, you get to be in on it. See also YHBT. 2. n. An individual who
chronically trolls in sense 1; regularly posts specious arguments, flames or
personal attacks to a newsgroup, discussion list, or in email for no other
purpose than to annoy someone or disrupt a discussion. Trolls are
recognizable by the fact that they have no real interest in learning about
the topic at hand - they simply want to utter flame bait. Like the ugly
creatures they are named after, they exhibit no redeeming characteristics,
and as such, they are recognized as a lower form of life on the net, as in,
"Oh, ignore him, he's just a troll." Compare kook. 3. n. [Berkeley] Computer
lab monitor. A popular campus job for CS students. Duties include helping
newbies and ensuring that lab policies are followed. Probably so-called
because it involves lurking in dark cavelike corners.
Some people claim that the troll (sense 1) is properly a narrower category
than flame bait, that a troll is categorized by containing some assertion
that is wrong but not overtly controversial. See also Troll-O-Meter.
The use of `troll' in either sense is a live metaphor that readily produces
elaborations and combining forms. For example, one not infrequently sees the
warning "Do not feed the troll" as part of a followup to troll postings.
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
From here we see that there are two connotations.
The first one is prone towards positive, the second negative.
I myself is a well-respected learned man, but every time i read something i
pity myself for how little i know. It is a wonder to me, of common people we
see daily on TV or streets (and in newsgroups), who have so many opinions
and things to say about so many topics from personal issues to political
issues, i often like to pet my ego and ask: Of the at least 2000 years of
recorded human history, of the countless geniuses in the past, of the myriad
of human subjects from sciences to arts, of the depth of the seas of
knowledge, how many droplets have they ever spent examining in their pitiful
life? Are all the people in history stupid? Are all human concerns in the
past irrelevant to today's?
Here are few resources on the troll as a creature:
http://www.flex.net/~layton2/encyc/trolls.html
from Tolkien Encyclopedia
by Varda lay...@flex.net
http://www.orkneyjar.com/folklore/trows/trow2.htm
Orkneyjar - The Heritage of the Orkney Islands
a site devoted to Norse lore
Here is an article that mentions the possible origin of troll to mean
stroll, wander:
http://www.worldwidewords.org/articles/polari.htm
In my aimless research for some history of usenet troll, i have also found
an essay called _The Subtle Art of Troll_, at
http://www.altairiv.demon.co.uk/troll/trollfaq.html
and
http://www.urban75.com/Mag/troll.html
For coherence and integrity of my report on trolling, and for posterity of
the good chance that this article might be unintelligible in a few months
because all the urls referred to are gone, i'll reproduce the complete
article below:
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
winding up the 'Net...
Section 1: What is a troll?
Section 2: Design Issues
Section 3: Content
Section 4: Newsgroup Selection
Section 5: Know Your Audience
Section 6: Following-Up
Section 7: The Successful Troll
Section 8: Troll RFC
INTRODUCTION
The object of this post is to bring together a definitive document to cover
the phenomena of the Usenet Troll. To many a troll is nothing more than an
annoying method of defeating the killfile whereas to the heavily killfiled,
trolling can be a virtual Godsend.
What I want this document to focus on is how to create entertaining trolls.
I have drawn on the expertise of the writer's of some of Usenet's finest and
best remembered trolls. Trolls are for fun. The object of recreational
trolling is to sit back and laugh at all those gullible idiots that will
believe *anything*.
Section 1: What Is A Troll?
The WWW gives this as a definition:
troll v.,n. To utter a posting on Usenet designed to attract predictable
responses or flames. Derives from the phrase "trolling for newbies"; which
in turn comes from mainstream "trolling";, a style of fishing in which one
trails bait through a likely spot hoping for a bite. The well-constructed
troll is a post that induces lots of newbies and flamers to make themselves
look even more clueless than they already do, while subtly conveying to the
more savvy and experienced that it is in fact a deliberate troll. If you
don't fall for the joke, you get to be in on it.
The following extract is from a broader expansion of the defining comments
given above:
In Usenet usage, a "troll" is not a grumpy monster that lives beneath a
bridge accosting passers-by, but rather a provocative posting to a newsgroup
intended to produce a large volume of frivolous responses. The content of a
"troll" posting generally falls into several areas. It may consist of an
apparently foolish contradiction of common knowledge, a deliberately
offensive insult to the readers of a newsgroup, or a broad request for
trivial follow-up postings.
There are three reasons why people troll newsgroups:
People post such messages to get attention, to disrupt newsgroups, and
simply to make trouble.
Career trollers tend for the latter two whilst the former is the mark of the
clueless newbie and should be ignored.
Section 2: Design Issues
A troll is no different to any other Usenet posting. That needs to be
stressed. Any article that you decide to write should be written with a view
to it actually being read by large numbers of people. Simply X-posting to
large numbers of irrelevant newsgroups is not creative trolling - it is just
spam and should be avoided.
The experienced troller spends time carefully choosing the right subject and
delivering it to the right newsgroup. With trolls, delivery is just as
important as the subject.
Start the troll in a reasonable and erudite manner. You have to engage your
readers' interest and draw them in. Never give too much away at the start -
although a brief abstract with hints of what's to come can work wonders.
Construct your troll in a manner to make it readable. Use short paragraphs
and lots of white space. Keep line length below eighty characters. Use a
liberal amount of emphasis and even the occasional illustration. A good rule
of thumb is that as your troll becomes more and more ludicrous put extra
effort into the presentation - this keeps the mug punter confused. Let
confusion and chaos be your goal!
Section 3 Content
Make your subject a relevant one. Posting "Star Trek Sucks" into hk.forsale
is not going to work very well and is liable to utterly destroy your hard
earned reputation as a troller overnight.
You do not have to make the subject clear. Trolls are aimed at two
audiences, the respondees and the lurkers. The best trolls reveal their true
subject only to the lurkers. In every sense those who reply to your troll
are your tools. So choose a theme for your troll and stick to it.
Outwardly you need to appear sincere, but at the same time you have to tell
your *real* audience that this is blatant flamebait. Your skill is shown in
the easy way that you manipulate large areas of the Usenet community into
making public fools of themselves.
Section 4 Newsgroup Selection
Choice of newsgroup is as important as the subject, tone and structure of
the troll. You want to appeal to each group you X-post into to ensure
responses from each group. A well delivered troll will anticipate what those
responses will be and thus ensure that contradictions will arise amongst the
different groups that you are setting up.
BAD:
Posting "USA Sucks" to alt.nuke.the.USA, alt.usa-sucks, aus.flame.usa
This is totally on-topic and obvious. A truly useless troll.
AVERAGE:
Posting "God Doesn't Exist" to all the alt.religion newsgroups
Here you are being too obvious. People recognise this sort of trouble making
and have usually learned not to respond to it. However, if your troll is
well written you can actually entrap a lot of newbies. This, if executed
correctly, can be exploited to cause great offence to those more experienced
troll avoiders on the groups you are attacking. Go for it!
GOOD:
Posting an article that appears relevant to every group but with no
connection between those groups other than the fact that you've just trolled
them.
The best trolls go out to an average of around eight or nine newsgroups.
This will stop them from becoming spam as it's not quite enough to be a real
problem. However, to get by on so few groups you have to include a couple of
popular ones in the list.
When posting to say seven groups you should try to break down your theme
into seven areas - each of which will be of specific interest to just one of
those groups. You then write an eight paragraph troll with a paragraph for
each group and a spare one for yourself with which to lob in a gratuitous
insult to everyone who was dumb enough to read your troll.
It is a matter of choice whether you choose newsgroups before or after
writing the troll. Some experts claim that newsgroup selection is the key to
successful trolling and should be done first, others will write general
trolls and then apply the standard Perl script that trollers use for
Automatic Random Newsgroup Selection. (I think this script is avail- able on
the web but I haven't yet got the URL - sorry)
Section 5 Know Your Audience
Remember that you have two audiences. The people who are going to get the
maximum enjoyment out of your post are other trollers. You need to keep in
contact with them through both your troll itself and the way you direct its
effect. It is trollers that you are trying to entertain so be creative -
trollers don't just want a laugh from you they want to see good trolls so
that they can also learn how to improve their own in the never ending search
for the perfect troll.
The other audience is of course the little people in those newsgroups that
your are attacking. Get to know them. Every newsgroup has its smartarse who
will expose your troll if given half a chance. Research your targets and
learn what their arguments are. Then avoid those argu- ments like the
plague. Drag them off-topic - the further off-topic the better. Remember,
you are trying to waste their time. Never take sides - remember that your
goal is not to win an argument, rather it is to provoke a futile one that
runs forever.
If, for example you were attacking Fast Food then you should also X-post to
Healthy Eating groups, Environmental Protection Groups, Animal Rights Groups
etc....You want to try to ensure that you have the broadest possible range
of opinions as this is the easiest way to sow confusion. The more confusion
the less the likelihood of your troll being exposed for what it is.
It can also be shown that the inclusion of just one totally off-topic
newsgroup can have dramatic effects. The list above is taken from a genuine
troll which also included an Artificial Intelligence group, the result of
which was to draw Computer Guru Professor Marvin Minsky into a flamewar
concerning Ronald McDonald's exploitation of the disabled - an all-time
classic piece of trolling - written by a practising veggie.
Section 6 Following-Up
"Even if this is true......"
That represents the perfect response to any troll. The mark of a gullible
lunatic that will almost certainly believe anything you tell her (women
always make the best trollees as they have a logical reasoning capacity of
zilch). A total group embarrassment. Award yourself a Troll Gold Star every
time you get one!
Other good responses include, but are not limited to....
"Although this is on-topic....."
"I disagree...."
"Yes, but....."
"Can you provide a source for this...."
Try not to follow-up to your own troll. The troll itself quickly becomes
forgotten in the chaos and if you just sit back you can avoid being blamed
for causing it. Remember, if you do follow up you are talking to an idiot.
Treat them with the ill-respect they deserve.
You should also learn to recognise follow-ups from your fellow trollers.
Sometimes an average troll can be elevated into majestic proportions when
several trollers spontaneously join forces via the medium of the follow up
troll.
Ignore cries of wasted bandwidth! This is pure drivel that will always be
posted by the anti-troll lobby. These jerks fail to understand that trolls
are the best way to drive people off the internet thus making available
multi-mbs for the rest of us to download our porn.
Section 7 The Successful Troll
A good example of troll success is the famous "Oh How I Envy American
Students" troll. This troll was written by an English brick-layer posing as
an american student. He correctly posted it to all the college news- groups
and then left american students to do all the work spreading it.
His troll ran for over a year, it is known to have generated in excess of
3,500 responses (an average of 1 response every 160 minutes for a whole
year) and the greatest coup of all was when an innocent american student
lost not only her internet account but was also expelled from high school
for abuse of the computer systems. Somehow she had managed to get the blame
for causing the troll.
Section 8 Troll RFC
Applications are requested for a standard API to the existing troller's tool
the "Automatic Random X-Post Generator" - now in pre-release beta.
Experienced trollers and recovered trollees are invited to submit items for
inclusion in this FAQ.
Mirror sites are required for the soon to open Troll WWW Site! Please send
in your favourite trolls. (min 500 verifiable follow-ups).
Suggestions are welcome for an appropriate newsgroup to post the winning
troll into after each Troll of the Month title is awarded.
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
I have also found a few troll songs.
_The Usenet Troll Song_, by
by Jacob Sommer (len...@earthlink.net)
at
http://www.gingicat.org/jacob/troll.html
http://groups.google.com/groups?q=song+troll&hl=en&rnum=1&selm=3A32758E.100
38F11%40earthlink.net
The full content is below:
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
The Usenet Troll Song
From a suggestion posted to rec.music.filk by Leslie Fish, with some words
by Gary McGath.
TTTO Be Our Guest
Be a troll! Be a troll!
Let disruption be your goal -
Anything that you can do to draw attention to your role
Egoboo can be nice
Get your fix at any price
You can make entire newsgroups into clucking little birdcoops
Be a troll! Be a troll!
Pound their patience into coal
Tell the regulars they have no sense of flair
Insult their mothers too and their manners, pfoo!
Be a troll, be a troll, be a troll!
Make them burn, make them freeze
Sing of people scratching fleas
Snigger at the woes of others who are forced upon their knees
Stress and fear, jealous rage
Let them be your guiding gauge
Then accuse the quiet suckers all as nosy mother****ers
Don't be small, don't be tame
Show you have no sense of shame
Just enrage them til on stage the heads will roll
You love to shrill out flame, it's all a giant game
Be a troll, dig a hole, you're a troll.
Flaming dues, barbeques
Ought to wake 'em where they snooze
Don't forget to douse the fires with proof 307 booze
(song tangent) : 307 Ale my friends, 307 Ale!
The finest drink that any bar has ever had for sale!...
(ahem) Feed them slugs, feed them snails
Put their legs between their tails
And so what if you are hated cuz their nerves are really grated
When you leave, do salute
give that middle finger toot
And be proud of your achievements in your soul
For you have shown that they are evil in their way
You're a troll-l-l-l, says our poll-l-l-l, you're a troll-l-l-l!
(or, "a-ass-ho-o-o-ole!")
Jacob Sommer
December 9 2000
And thanks to Tom Smith for the most excellent potables :-)
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
Now here is another troll song sung to the tune of jingles bells
http://groups.google.com/groups?q=song+troll&hl=en&rnum=9&selm=66m23e%243en%
241%40newsd-141.iap.bryant.webtv.net
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
Search Result 9From: drmjo...@webtv.net (drmjo...@webtv.net)
Subject: DRMJ's "N G Troll" SONG!!
Newsgroups: rec.music.country.westernView: Complete Thread (5 articles) |
Original FormatDate: 1997/12/10
"The N G Troll Song"
Copyright 1997 DRMJ
(sung to the tune of "Jingle Bells")
Dashing through the posts; laughing all the way.
Making people pissed; running from their flames.
Pulling all their strings; giving them a fit.
Calling them a name or two, 'cause I don't give a shit! ...(hey,)
Chorus:
N G Troll; N G Troll; Newsgroups all the way.
Oh, what fun it is to be a usenet troll today.
Spamming through the threads; typing all the way.
Telling people off; screwing up their day.
E-mail in my box; nothing good to say.
All the posters wish me dead...but I ain't dead today! ...(hey,)
Chorus: (same)
Losers on the net; waiting for a fight.
I can't win a one; 'cause I'm never "right".
Everything I say...comes back with some sass.
Even if I shut my mouth...to them I'd be an ass!
..(hey,)
Chorus: (same)
"Boobs" and insults reign; jokes and humor rule.
Why I waste my time?; that's a good one too.
If I had a life; if you want the truth...
Then I'd be a jackass and be boring just like you! ...(hey,)
Chorus: (same/2 times)
N G Troll; N G Troll; Newsgroups all the way.
Oh, what fun it is to be a usenet troll today.
###
note: Remember...the only *good* thing about
a fart is when it's *out* and *gone*!!
drmj
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
Then i found this interesting meow meow story, which the author claims to be
the largest usenet flamewar.
http://member.newsguy.com/~shpxurnq/meow.html
full text below:
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
The One True History of Meow
By The 2-Belo
------------------------------------------------------------------------
The Meow Wars The largest flame war in Usenet history, involving hundreds of
people from over 80 newsgroups, lasting over forty-five weeks. It was the
Usenet equivalent of World War II. It was The Flamewar to End All Flamewars.
It was the best of times.The Meow Wars It all began innocently enough: a
small group of students at Harvard University - a band of future
bloodsucking ambulance-chasing lawyers, medical specialists who phone in
diagnoses from mobile phones on yachts, and caffeine-crazed computer
programmers with way too much time on their hands - began to use Usenet as a
local dorm room bulletin board/gossip clique area.
The newsgroup they chose, apparently at random from among the hundreds of
empty Usenet joke-newsgroup wastelands: alt.fan.karl-malden.nose. [The
circumstances surrounding the birth of this newsgroup can now be told,
thanks to the location of the original newgroup control message.]
This small group of posters set up their little regime in this forgotten
newsgroup, posting daily schedules and post count summaries, talking about
this class and that event and this and that and the other. Eventually, they
tired of posting articles about their immensely boring daily lives, so they
turned their attention to the computer network world around them. First they
tried their hand at penny-ante crossposting, branching out to claim other
empty newsgroups, such as alt.fan.ok-soda and alt.fan.pooh. This soon grew
stale as well, as each poster moved into a new group only to find the same
bored people he/she left behind.
Apparently as a result of the Ivy-League uppity belief that all the world
should be like them (and also as a result of trying to avoid studying for
exams), one of the posters suggested that they "invade" a real, populated
newsgroup and "rile up the stupid people". When Matt Bruce, another of the
Harvard band, heard this, he wrote this response:
"I suggest that we start either posting or crossposting to
alt.tv.beavis-n-butthead. I also suggest that we use big words and perfect
grammar, and refuse to write as the young ruffians in question speak.
"This could lead to some interesting 'dialogue.' "
This article was posted directly to alt.tv.beavis-n-butthead. The regulars
at that group, wondering what the world was coming to, scoffed at the notion
of a couple of stuck-up geeks from Harvard calling them "ruffians", and a
few unpleasantries were exchanged. This crosspost-tossing attracted the
attention of an unknown poster going by the name of Dontonio Wingfield.
He/she discovered that one of the Harvard posters, Chuck Truesdell, placed
"meow meow" (a reference to Henrietta Pussycat of Mr. Roger's Neighborhood
fame) in many of his posts as a sort of calling card, as his initials spell
"C.A.T.". Matt Bruce picked up on this practice for one post (the quote at
the top of this page), and someone, for some reason, took that article out
of afk-mn, crossposting it to a dozen newsgroups as a troll against the
"Nosers" (as the Harvard students called themselves). Dontonio Wingfield
either instigated this troll, or was the first to reply to it:
"What the hell is this shite? Would you mind keeping it the hell out of
HERE?"
The Dontonio Wingfield persona then, of course, vanished. The posters in the
targeted groups, noting the "meow meow" elements, began to retaliate against
the supposed original crossposter, Matt Bruce. These posters entered the
'Nose and found it full of other Harvard students like Matt, and the
counter-invaders flamed and spewed "meow" with vigor, In time, flames
containing the word "meow" would start popping up all over the place, aimed
mostly at areas where the high-class uppity Ivy-League snots were known to
congregate, such as alt.college.college-bowl. Other flames targeted snobbish
college kids who regularly huffed their freckled noses in newsgroups such as
alt.music.nin. Some of the more daring souls decided to forge articles in
Bruce's name, spreading the "meow" attacks to more and more groups,
including afk-mn, to add to the onslaught against him and his
"intellectually elite" cohorts.
When the real Matt Bruce caught wind of the uproar, he and the other Harvard
students first tried to write his attack on atbnb as a "joke". When no one
bought his story, he attempted more forcefully to get the attackers to stop,
which only sounded like more condescending talk:
"Please stop. Cease and desist. You are only making yourselves look silly."
When this only fanned the flames further, he threatened to cancel all
articles containing the word "meow", and to netcop all the "meow" article
forgers. This "Cancellation Notice", posted about a month and a half after
the first "meow" troll, was apparently the proverbial last straw. A person
crossposting into 12 newsgroups, then claiming it a "joke", when he
obviously had no sense of humor? This pissed off the Usenet Performance
Artists to no end. it was time to teach Matt Bruce - and the rest of his
gang of snots - a lesson. Suddenly, afk-mn, alt.college.college-bowl, and
scores of other groups were flooded to the gills and beyond with hundreds
upon hundreds of huge meow articles from all corners of Usenet. Cascades,
ASCII cats, hundred-line "meow" hello-world-type flood posts, and more were
posted, reposted, munged, pureed, and regurgitated all over the servers of
the world. The Harvard kids' protests were quickly lost in the feline tidal
wave. Every post by a Harvard snot would result in fifty cascade follow-ups.
alt.college.college-bowl, a known regular haunt of Matt Bruce, was reduced
to a smoldering crater, so inundated with meows that its regulars could no
longer use it. After a couple of weeks of this, Usenet in general looked
like Chernobyl, or the Marina district of San Francisco after the 1989
earthquake, or downtown Nagasaki the day after the fall of the Fat Man.
A number of the attackers, calling themselves the "MEOW MEOW ARMY", were
bent on taking over afk-mn and occupying it as their own. It soon was - the
Harvard students, seeing a fire raging out of control in their cyber Dunster
House, were compelled to escape to a local, non-propagated newsgroup on a
Harvard server.The meow hurricane, however,simply refused to die:
alt.college.college-bowl continued to be attacked until almost a year after
Matt Bruce's now infamous post, and the Meowers now in afk-mn began to
redecorate their new home (with the legendary Fluffy, formerly Matt Bruce's
pet, claiming ownership of all of Usenet), merging with the verbal abuse
powerhouse known as the Mighty Alt Dot FlameTM.
Today, afk-mn remains as a sort of Usenet posting relay hub. The first- and
second- generation Meowers also became alt.flame regulars. Other bases of
Usenet Performance Art, such as alt.alien.vampire.flonk.flonk.flonk,
alt.non.sequitur, and alt.stupidity, long bases of Meow action, also traded
regulars with the Nose. These groups fused together to form what is now
known as the Empire of Meow.
This empire is still growing as you read this, as in 1998 the groups
alt.flame.niggers and demon.local were recently annexed much in the same
fashion as the 'Nose. There are hundreds of groups throughout the alt.*
heirarchy who have at least heard of the Meow movement... every so often, a
troll warning will be posted to these groups, sometimes even warning the
inhabitants about elements that the Empire has nothing to do with:
"You will be able to recognize a troll and an impending invasion from
alt.syntax.tactical by cascades, numerous appearances of the word 'meow',
and crossposts to alt.fan.karl-malden.nose..."
Also, throughout its lifetime, the actions of the Empire have seemingly
become a convenient scapegoat for real Usenet abuses. In February of 1997,
several inhabitants of the 'Nose were placed under a Usenet Death Penalty,
or UDP, for over a week by a certain self-made Usenet "spam canceller". The
crime: cascades. Also, in 1998, Meow became the whipping boy for those
persons who wanted a UDP imposed on Altopia News Service, which many Meowers
use to post to Usenet, because of the few Altopia users who were committing
blatant acts of abuse such as mailbombing and post flooding. These accusers
were wont to include relatively harmless acts of off-topic crossposts and
cascades in with the real problems. Apparently, there will always be those,
like the Harvard kids, who will not tolerate the right that all Usenetters
have to act silly, or to have a sense of humor, or to have the view that
nothing should be taken too seriously. It should, however, be noted that
without the existence of tight-sphinctered conservative snots, there would
be no Meow in the first place. Hated or not, it would thus seem that the
phenomenon known as MEOW, and its practitioners known as MEOWERS, have
forever carved their place among the legends of Usenet, along with the likes
of Kibology and the first MMF chain letter. Clealy, sir, the Empire of
Meow's feline vocalizations will be heard forever more throughout Usenet
history.
Meow.
------------------------------------------------------------------------
Back to Bungmunch University
Back to Raoul Xemblinosky Home Page
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
meow meow army -- imagine that!
of course there's Bill Palmer's essay "To Catch a Troll".
http://groups.google.com/groups?q=to+catch+a+troll&hl=en&rnum=7&selm=7lbpph%
24feg%40dfw-ixnews19.ix.netcom.com
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
From: Bill Palmer (wil...@ix.netcom.com)
Subject: To Catch a Troll...
Newsgroups: misc.writing
View: Complete Thread (4 articles) | Original Format
Date: 1999/06/30
Note: A previous version of this article was originally
misc.writing. However, this posting consists of a considerably-
revised new version with a number of significant changes in
content, structure and style.
This new version incorporates some of the suggestions
I received from misc.writing readers, too, so if you
read the first one and enjoyed it or perhaps even
commented, you might want to check this posting out.
[On the other hand, if you did not like the central ideas in
the earlier posting, you probably won't like this new version
either, so you might do better to move on to your next
newsreader selection. As you know, I'm not big on arm-
twisting my readership.]
If you missed it earlier, I might tell you I feel "To Catch
a Troll..." is of possible interest in misc.writing for two
reasons: First, it discusses the usage of a net culture term
"troll", regarding a sense of the word that is new and still
in flux though discussed fairly often on the net and in this
newsgroup.
Further, "To Catch a Troll..." also deals with two recurring
misc.writing problems: both the problem caused by trolls'
off-topic posts, and the other problem caused by people
maliciously crying "Troll!" to suit their own whims.
(I call the latter, the false "troll crying", a problem because
when someone says "*WE* never read him since he's a troll"--and
when the word "troll" is unfairly applied in such a pronouncement--
it says in effect, "Do not read that person with an open mind.
Read ME instead and take MY word for it, he's a troll though
what he says may SEEM perfectly reasonable." Such pseudo-
intellectual witch-hunting is ALWAYS deplorable, even more
so in a newsgroup focusing on writing.)
-----------------------------------------------------
To Catch a Troll...
Last month a poster in misc.writing made a remark
that started me thinking about some matters I would
now--with your kind patience--like to share with you.
Essentially, the person did not seem to enjoy
what I observed in my misc.writing-posted article,
"Close Encounter with Punctuation Bigot".
Unfortunately, my attacker was not at all forth-
right about challenging any of my assertions in
that article.
[Note: "Close Encounters of a Punctuation
Bigot" was featured in last week's issue of
MillenniumWriters.com. The artist/editor
added some very clever graphics, so you might
want to check it out even if you have already
read it in the newsgroups where it appeared.]
Instead of troubling himself with attempting
a reasoned refutation of my assertions, he posted
some peevish remarks directed at me as a person
rather than at the many ideas in my article.
In the course of his unfriendly comments, he said
something that made it clear he was accusing me of
being a troll. In fact, he actually used the term
"troll" as he did this.
That's right. Me, Bill Palmer, "a troll"!
The person who has posted over 6,000 articles,
most by far to generally appropriate newsgroup
forums and has done so proudly under his own name
every time.
The net writer who has generated follow-up from many
thousands of DIFFERENT readers and who has written a
significant percentage of the best known original Usenet
articles of the past few years.
The proud owner of "Dejamountain", the only personal
archive famous by its own name.
My critic's style of unjust name-calling bothers me
because it smacks of witch hunting, certainly so when
we throw all reason out the window and start applying
vague criteria defining "trolls" and "trolling" to
suit our own whims by unfairly branding someone who
rubs our nose out joint with his or her controversial
(but on-topic) articles.
Further, a few months back when I posted another
original article in a different newsgroup someone
did in fact call me a troll then too. I thought
at the time that the epithet was incredibly
unreasonable and I still think that.
Anyway, letting bygones be bygones, let's examine
what "troll" in fact means in our newsgroup culture.
In the first place "troll" can mean different
things to different people, and I can respect
each person's right to his own meaning.
The universally-respected Usenet expert Professor
Chudov, for instance, makes it plain he believes
in a sort of "productive (my own term trying to
sum up what I have read by him) trolling", where
the troll generates entertaining or amusing follow-
up for the intellectual and/or amusement benefit
of the entire newsgroup by gently (or not so
gently) tweaking beaks now and then with thought-
provoking postings.
However, since the word was used against me in the
negative sense that so many posters seem today to favor,
I will focus primarily on that sort of troll here: our
"infamous Usenet pest" kind of troll, as opposed to the
"newsgroup gadfly" who uses actual wit for stirring up
productive or merely amusing posted reactions from
newsgroup readers.
A troll in the negative sense is simply a person who
will do anything for attention.
The aim of such a troll is not to entertain or enlighten
readers, but to have the troll's existence validated
by any sort of response at all.
A troll in this same pejorative sense is by nature
insincere, too.
Such a "Usenet critter" will generally post what will get
the most replies, and not post expressions of ideas and
sentiments the troll actually believes in.
This variety of troll has no pride in writing or thought
quality either.
Rather, the only goal for our pesky sort of troll is to
make the readers aware--and stay aware--of the troll's
shabby net-existence.
As you know by now, then, I view this kind of troll as
simply but an attention-starved misfit who craves any
sort of attention, no matter how unfavorable.
While there are "trolling newsgroups" and while
the net is a big place, I feel that ninety-nine-
point-nine percent of all Usenet groups, at least,
would be far better off without the sort of troll
I describe above.
On the other hand, we never want to get into a witch
hunting frame of mine regarding trolls.
We must have sensible criteria to apply, if we
wish to be at all fair.
I have, in fact, encountered newsgroup situations
where anyone who comes into a group and posts
*ON*-topic material that does conform to what the
more active and often aggressive members of the
group deem to be "okay" will be branded a troll.
To help avoid unfair application of the word
troll in its highly-negative sense, then, let's
work together toward encouraging some sort of just--
and practicable--method for determining who is
or is not likely a non-productive Usenet troll.
Here is what I suggest regarding questions to be
asked--and honestly and reasonably answered--of
any troll suspected of merely trying to get
attention by stirring up mischief:
1) Are the suspected troll's posts mostly or entirely
OFF-topic?
(*ON*-topic being defined in a fair way, of course,
such as inquiring sincerely if any reasonable person
was likely to agree that the material in question
was close to being on-topic in the newsgroup where
it was posted.)
2) Did the suspected troll come into the newsgroup
posting vicious personal attacks having nothing
to do with the newsgroup topic?
3) Does the suspected troll FOLLOW UP on-topic articles
by others with personal assaults having nothing to
do with the things being discussed on a thread?
The notorious Palmer's Parasites are very big
on this. They claim a rather peculiar license for
following up any ON-topic article of mine with
slimy, OFF-topic attacks having nothing at all to
do with a newsgroup subject OR an ongoing thread
discussion.
I make no apology for Palmer's Parasites, anymore
than I would "apologize" for a gang of muggers who
assaulted me at an ATM. People are responsible for
THEIR OWN postings. The Palmer's Parasites should
therefore be immediately run out of any non-flaming
group where they post off-topic rubbish, in my view.
Of course, Palmer's Parasites are naturally
trolls, too, which is why I mention them, but when
the trolling becomes so personal that you get a half-
dozen or so human parasites netstalking a net writer
through Dejanews and flooding serious newsgroups
with off-topic personal attacks, you have trolling
in its ugliest and most vicious form.
In a way, you can call these aggressive, trolling
parasites one of the prices of great success as a net
writer. You reach a certain degree of popularity, and
they start crawling out of the woodwork after you.
Even so, that sort of "netstalking troll" is unusually
reprehensible and I suspect most Usenet users loathe
them fully as much as I do.
4) Does the person crosspost from your group to the
flaming newsgroups?
Trolls love to crosspost between serious newsgroups
and flaming/amusement newsgroups because they view
their goal as one of causing annoyance, and they
know that if they can suck additional off-topic posts
into the target newsgroup, the "annoyance factor"
increases proportionally as new trolls crosspost
their rubbish to the non-flaming group targeted.
5) Are the person's posts poorly-written and generally
quite skimpy in--or entirely devoid of--intelligent
content?
Trolls take pride in getting ANY sort of
reaction, good, bad or wrathful. Development
of a writing style to be proud of, then, has
little to do with to with a troll's raison d'etre.
After all, when they drive away enough newsgroup
readers with their drivel, they simply pop up
with a new moniker and start over.
Most parasiteical (netstalking) trolls specialize
in the "snip and drool" follow-up, which means they
favor splashing puerile insults after every few lines
written by the poster targeted.
This snipping-and-drooling behavior is "writing" on
the cheap, involving reposting the trolls' (current)
names while saying nothing entertaining that a naughty
computer-literate sixth-grader could not have said better.
You have seen quite a few of the parasitical trolls pop
up in misc.writing, with no inhibitions at all about
the rubbish they post. (How "brave" people get while
hiding behind phony names!)
The "parasitial"-type trolls' purpose involves
annoying all, while associating themselves in the
readers' minds with the writer/target. As a result,
actually posting anything that is intelligent,
well-expressed or original has nothing to do with
the aims of the "Here I am again and ain't I cute?"
snip-and-drool assault by the parasitical troll.
6) Does the suspected troll post under a phony name?
Now, I am not suggesting pseudonyms are
wrong, but in general trolls will use false
names because, as I mentioned above, people
soon catch on to trolls and stop reading
their posts. When trolls of this sort feel
have driven off most of their readers, they
change their names again, and of course the
false name using makes them "braver" about the
ugly, malodorous slime many of them flood the
net with, too.
Even so, I defend everyone's RIGHT to post
under pseudonyms, and I don't want that
misunderstood. But allowing that all
people have the RIGHT to do something in
no way makes the lowly behavior of a few
(who are exercising the right only for
mischievious purposes) suddenly admirable.
Okay, think of someone you suspect of being a
troll. Ask yourself how many affirmatives
you get to the above questions when you are
trying to be completely unbiased in your
responses.
If the person is indeed a troll, you will have
likely answered YES to most or all of those
questions above.
Examining the matter from a slightly different
viewpoint now, I might add that there is nothing at
all wrong with a poster's wanting to get lots of
intelligent feedback to his or her articles.
I say that because I have read posts by people
who seem to insinuate that if you generate a good
deal of interesting follow-up, you are a troll
per se.
That notion boggles the mind for its silliness.
In reality, one test (and I don't suggest it's the
ONLY one) of any poster's standing in the intellectual
portion of the Usenet community involves the question
of how many original, on-topic stand-alone articles
generating lots of interesting follow-up the person
has posted.
A true Usenet intellectual is by nature a thread
starter.
A Usenet genius, then, would have to be the genius
of thread-starting, would have to be someone proving
capable of starting thousands of successful threads--
not with "Star Wars sucks" trolls, of course, but
with original articles containing unique, fully-
realized ideas that can challenge or otherwise
inspire others to post creative or informative
thread-responses in their turn.
That's not trolling, at least to the extent the term
represents activities now causing unneeded annoyance
in so many Usenet newsgroups.
I can't imagine a nuttier, topsy-turvyier state of
affairs than what we would have in Usenet if posters
had to hesitate before clicking "send", thinking,
"Gee, I hope a lot of people DON'T follow me up
on the article I'm posting--someone might think I
am a troll." (We are to imagine the speaker
shuddering and wringing his or her hands.)
After all, the best of Usenet has a lot to
do with DISCUSSION, and discussion does not
occur when we have a state of affairs where
people simply post their own ideas and that's
the end of the matter.
Discussion means give and take, and at best that's
"give and take" leading somewhere productive in the
intellectual or the creative sense, not a very brief
series of curt, unresponded-to statements going nowhere.
Let's leave the "You had your say and I had my say so
let's drop it" stuff to those who make no pretense at
all of having even a slightly above-average command of
the English language.
Frankly, and I say this only in the "if the shoe fits
wear it" vein, if you want to impress others as being
a person of few words, I think you can make a far
better impression in a auto repair shop than in a
Usenet writing group.
As a Usenet poster, one of the things that makes
me proudest occurs when I post an original article
that garners plenty of entertaining and/or informative
feedback.
And believe me, I don't define "good feedback" as
being something that compliments me personally or
even agrees with anything at all I assert in my
article.
Good feedback consists of interesting, reasonably
well-expressed, somewhat-original thoughts. That's
all, and I feel that almost everyone in Usenet has
the capacity to add worthwhile follow-up remarks,
if inspired by others to do so.
When this newsgroup thing works the way it's supposed
to, I call it "swimming in the thoughtstream." I love
being a part of it.
Getting back to trolls, though, let's apply the
above sensible criteria before we accuse.
Let's not cry troll when someone rubs us the wrong
way with on-topic opinions, either.
Finally, I would ask something of every reader,
including the person in who so rudely accosted me
last month screaming "Troll!" upon being upset by
the frank, on-topic views I posted in misc.writing:
Let's not start throwing people in a pond and saying
if they float they are a troll and if they sink they
are not a troll.
Let's use reasonable criteria understandable and
applicable to all, newbies as well as "oldbies".
You now have such criteria, so feel free to use them.
Fair enough?
Bill Palmer
alt.genius.bill-palmer
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
I like this Bill Palmer essay. It reminds me of one i've written, on the
philosophies of netiquette, posted on comp.lang.lisp twice. If you haven't
read it, fetch it from deja.com.
I also found this ONE:
http://groups.google.com/groups?hl=en&selm=3ABD9FF9.CE2705DD%40home.com
full text below.
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
<quote>
Message-ID: <3ABD9FF9...@home.com>
From: =?iso-8859-1?Q?=7C=3C=C4=D1=F4=A7?= <nat...@home.com>
Newsgroups: alt.music.jethro-tull
Subject: Once upon a troll...
Date: Sun, 25 Mar 2001 07:36:25 GMT
Once upon a time, in a village far, far away... A big, ugly troll
terrified and harassed the good town of "Broadford." The citizens and
townspeople all feared the troll. They hid from it at all cost. And
instead of bringing the little town to ruins, and moving-on to another
city, the Troll persisted in driving Broadford to the ground, while
making sure to warn any ignorant newcomers with rude, hostile remarks,
that their presence was indeed unwanted.
"I'm the biggest, badest troll in all the land" shouted Troll, "And
I will not sleep until I have exterminated every last one of you!"
And with a gruesome display of might, the troll would rampage the
village, tearing down houses, stomping on babies, and even fornicating
forcefully with the womenfolk.
When the troll was not feeling particularly forceful, he would
express his anger by means of deception. He would imitate the
inhabitants of the town, and create false gossip by emulating the
physicality of respected individuals, and endowing their reputations
with alter ego traits. But after only a few weeks, the Broadfordians
became keen to his methods of defamation, and ignored such attempts of
by the troll.
This only enraged the mighty beast further. To achieve breaking the
soul and spirits of the town, he soon realized he would have to spend
every moment of each day, creating havoc. He compensated his sleepless
nature, with large quantities of meth amphetamines.
Occasionally, brave men would step-up to this troll, and engage him
with wise comments, "Troll, have you nothing better to do, than to spend
your entire days and nights terrorizing us in such a brute fashion?"
"Troll, have you no other daily obligations, that you may devote all
waking moments to pummel our town to ruin?"
"Troll, have you no shame, that you may apply such ruthless behavior
to a town deserving nothing more than a warm embrace?"
Despite the troll being often dumbfounded by these inquiries, he
over time learned to avoid them, by trying to sound wiser than his
contends, and upon completion of such a task, he would drive his horns
into their hearts and fling them across to adjacent cities, with a
grand shaking of his head. And then, usually showing his true nature of
speech, would then begin to use his latest brawl, as a scare tactic to
the remaining few townspeople, "And let that be a lesson to ye all! I
shall have no patience with up-risers! I hate you all, AND your puny
town of Broadford!"
For years and years, his vice on the city halted trade and
communication between it and neighboring lands. He would even taunt
distant villages while Broadford lay in rest; villages such as: Syrinx,
Black Mountain and Crystal Ship.
It seemed as though all hope were lost, until one day, Broadford was
paid a visitor. This visitor was another troll.
"Oh dear God, not another troll," begged the people to their
spiritual guidance, "That's the last thing we need!"
But this troll wasn't any normal troll. She was a very beautiful
troll. A very beautiful troll, in heat.
Feeling inclined to satisfy her growing discontent of sexual
pleasure, she searched out this now infamous, rageful troll. She
appeared to him, as he was on his hourly rampage through town.
"Good troll of Broadford, I beseech thee, aide me in my campaign for
decent health," the lady troll continued, "I have a passion growing
within me; a passion, that I feel, may only be extinguished by a troll
of your character."
With this, the troll of Broadford ceased his assault, and pondered
the visitor's words. He had never experienced any emotions even
similarly related to the concept of "love."
And before the troll could even respond, the female troll hopped on
his naked body, and fucked him over and over. They fucked for hours.
On top of buildings, in green pastures, anywhere imaginable. His most
astounding source of pleasure, came from having his newfound mate plunge
her 12, wide, coarse fingers into his recently expanding anal cavity.
After 3 months of non-stop sexual activity, the troll stood-up and
screamed, "God damn, it feels good to get laid! I always wondered what
I was missing!!"
And with that, the troll and his lover pranced off into the forest,
never to be heard or seen from again. And Broadford was then allowed to
live in peace and harmony, as it had been before the troll's reign.
</quote>
--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--xah--(^_^)--
Brings tears to my eyes. Does it you?
In this lispy land, are there beautiful lady troll who needs my character
for decent health, who could pacify my anger, and fuck me over and over?
When a person's sanity is at balance, when human passion is raging, no
etiquette must get in the way.
-- Xah Lee
postscript:
for those newbies or kiddies or regulars who have no interest in a usenet
troll phenom or its phenomenon, i offer pornography:
http://www.alsscan.com/budapest/budapest.html
http://www.alsscan.com/prague/prague.html
one has to marvel at these Euro chicks. Such candor. Such sincerity. Such
ease, naturalness, loveliness. When can the world's moralists take off their
fucking attires? When can when can when can?
I truly thank the internet, for making information of all sorts readily
available for anyone, anywhere, anytime. Such is a core element in
destroying all evil.
Xah
x...@xahlee.org
http://xahlee.org/PageTwo_dir/more.html
> From: Fernando RodrÃguez <spa...@must.die>
> Organization: T.I.A.
> Newsgroups: comp.lang.lisp
> Date: Thu, 22 Nov 2001 15:47:57 +0100
> Subject: Re: I'm outta here...
Dear Fernando Rodriguez and readers,
you wrote:
> No, it's about a troll
> that shows up in cll from time to time. Ignore him.
You are accusing me of being a USENET troll.
> * Erann Gat
> | Why should I do your legwork for you, particularly when you have been so
> | vocal in berating people who have expected you to do their legwork for
> | them?
>
> I have? Could you please do the "legwork" and show me how you arrived at
> this nutball conclusion?
I would (I accept that the burden is on me to find citations to support my
claims), except that the only way I know how to find this information is
with a search engine, and you don't seem to approve of using search
engines:
> Glad to see you know how to use search engines. The concept of context
> is forever lost on the crazy who think that the answer is in text
> searches. I bet you even have your own archive of my articles so you can
> be more efficient in finding "incriminating" evidence. Nutcasese who do
> this virtually _flood_ USENET.
You would lose that bet.
E.
> g...@jpl.nasa.gov (Erann Gat) writes:
>
> > on its face. Tell me then, why would someone who hates CL spend his
> > career working for a CL vendor?
>
> "Hate" is a strong word,
Indeed it is, but I didn't choose it, Erik did.
E.
> * Erann Gat
> | What I can't figure out is: where's the harm? I've seen claims ranging
> | from the proposition that John is fracturing the community to the idea
> | that he wants to destroy the language out of some deep-seated hatred
> | (which is so absurd I'm embarrassed to even be repeating it).
>
> The reason you have such problems seeing the harm is that you have made
> up your mind long ago that it would be abusrd to want to do harm and that
> nobody would do the absurd, but this is wrong. Such is the nature of the
> problem that nutcases _do_ what seemingly normal people think is absurd.
Well, now that we've got that cleared up, I ask again for the sixth time:
what is the harm?
* Erik:
| Pointing out to you that something you said is _wrong_ and misrepresents
| someone does not work the same way it does on normal people, because you
| will (1) never grasp that it was wrong, and (2) never admit to it even if
| you do.
I couldn't have said it better myself.
E.
What incredible lame cop-outs you produce! Sheesh, have you no shame?
///
--
The past is not more important than the future, despite what your culture
has taught you. Your future observations, conclusions, and beliefs are
more important to you than those in your past ever will be. The world is
changing so fast the balance between the past and the future has shifted.
Sigh, this stupid blame game again. Every single word in the English
language has been "chosen" by someone else at some time or another, so if
someone like Erann Gat needs to disassociate himself from what he does,
he picks one of those people and says _he_ did not choose the word --
that other guy did. In the eyes of someone like Erann Gat, that somehow
means that he is no longer responsible for what he says or does at all.
I find such behavior very, very peculiar. Who could possibly be fooled
by this _extremely_ annoying game? I must assume that the only purpose
is indeed to annoy everyone. Fine, you succeed, Erann Gat. How long do
you have to keep it going this time? Get a life or something.
Good. Keep it up.
> * Erann Gat
> | Indeed it is, but I didn't choose it, Erik did.
>
> Sigh, this stupid blame game again. Every single word in the English
> language has been "chosen" by someone else at some time or another, so if
> someone like Erann Gat needs to disassociate himself from what he does,
> he picks one of those people and says _he_ did not choose the word --
> that other guy did.
No, I didn't mean to dissociate myself from it, I simply meant that I used
the word because I was refuting something you said, and the statement I
was refuting used the word.
However, I was wrong. I went back in the archives to find the quote and
it's not there. The closest I could find was:
* Erik
| John Foderaro expresses a very strong hatred for the standard as
| such, and the standardization process in particular.
which I cannot dispute. I don't know where I got the idea that you made
the claim that John hated Lisp. Maybe you were right all along and I
really am going insane.
I apologise to you for misrepresenting your position on this. I feel
quite chagrined.
I stand by my basic claim that I don't think John is doing any appreciable
harm with his "coding standards" document.
Erann Gat
g...@jpl.nasa.gov
These two paragraphs obviously contain equal amounts of truth.
I give up on you, Erann Gat. You are all manipulation, no contents.
Whatever it is you suffer from, just get over it.
> I give up on you, Erann Gat.
Good.
E.
Is it a good idea to provide these SETF's? (they are not in the ANSI CL)
Do I understand correctly that in
(pathname-slot path :case ???)
the case conversion is identical whether PATH is logical or physical?
[I wonder what the lack of response to your message means, provided
that the behavior LW/CLISP and ACL/CMUCL _is_ different]
--
Sam Steingold (http://www.podval.org/~sds)
Keep Jerusalem united! <http://www.onejerusalem.org/Petition.asp>
Read, think and remember! <http://www.iris.org.il> <http://www.memri.org/>
Isn't "Microsoft Works" an advertisement lie?
>> * In message <sfw3d39z7...@shell01.TheWorld.com>
>> * On the subject of "correct use of :case in make-pathname"
>> * Sent on Tue, 20 Nov 2001 17:09:31 GMT
>> * Honorable Kent M Pitman <pit...@world.std.com> writes:
>>
>> (setf (pathname-host new-pathname :case case) host)
Sam> Is it a good idea to provide these SETF's? (they are not in the ANSI CL)
Sam> Do I understand correctly that in
Sam> (pathname-slot path :case ???)
Sam> the case conversion is identical whether PATH is logical or physical?
Sam> [I wonder what the lack of response to your message means, provided
Sam> that the behavior LW/CLISP and ACL/CMUCL _is_ different]
It means that, at least for me, I don't understand the issues well
enough to comment. Plus CMUCL has its search-list feature that
muddies the picture. I was sufficiently confused by this a long time
ago when I changed a few things in CMUCL wrt to logical-pathnames.
Ray
> > * In message <sfw3d39z7...@shell01.TheWorld.com>
> > * On the subject of "correct use of :case in make-pathname"
> > * Sent on Tue, 20 Nov 2001 17:09:31 GMT
> > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> >
> > (setf (pathname-host new-pathname :case case) host)
>
> Is it a good idea to provide these SETF's? (they are not in the ANSI CL)
Sorry. They have to be there internally to implement what I'm getting at,
even if named something else. I guess with more work I could have hid it
all in the internal-make-pathnaem part, but it would amount to the same.
I was trying to show a reference implementation more than a demo of good
style.
> Do I understand correctly that in
>
> (pathname-slot path :case ???)
>
> the case conversion is identical whether PATH is logical or physical?
I personally think so. yes. I think logical hosts have a preferred case
(and that it's uppercase). But regardless, the pathname operations algebra
only works neatly if setting/reading the slots of a logical pathname hides
what the chosen preferred case is for a pathname.
> [I wonder what the lack of response to your message means, provided
> that the behavior LW/CLISP and ACL/CMUCL _is_ different]
Very odd.
> Sam> [I wonder what the lack of response to your message means, provided
> Sam> that the behavior LW/CLISP and ACL/CMUCL _is_ different]
>
> It means that, at least for me, I don't understand the issues well
> enough to comment. Plus CMUCL has its search-list feature that
> muddies the picture. I was sufficiently confused by this a long time
> ago when I changed a few things in CMUCL wrt to logical-pathnames.
If someone presented the search list feature and any issues it raised, I'd
be happy to comment. MACSYMA had a search list in it, and (a) I don't find
it interferes and (b) it's one of the most important reasons that you need
to get these other details right! If you do the merging wrong, search lists
don't work right...
it appears that we are alone :-(
(setq z (logical-pathname "sys:foo"))
(string= (pathname-name z :case :local)
(pathname-name z :case :common))
returns T for LW, AllegroCL, CMUCL, CLISP.
what am I missing?
--
Sam Steingold (http://www.podval.org/~sds)
Keep Jerusalem united! <http://www.onejerusalem.org/Petition.asp>
Read, think and remember! <http://www.iris.org.il> <http://www.memri.org/>
cogito cogito ergo cogito sum
> > * In message <sfwvgfu...@shell01.TheWorld.com>
> > * On the subject of "Re: correct use of :case in make-pathname"
> > * Sent on Wed, 28 Nov 2001 18:59:35 GMT
> > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> >
> > > Do I understand correctly that in
> > >
> > > (pathname-slot path :case ???)
> > >
> > > the case conversion is identical whether PATH is logical or physical?
> >
> > I personally think so. yes.
>
> it appears that we are alone :-(
>
> (setq z (logical-pathname "sys:foo"))
>
> (string= (pathname-name z :case :local)
> (pathname-name z :case :common))
>
> returns T for LW, AllegroCL, CMUCL, CLISP.
> what am I missing?
I'm a long way from my documentation (translation: typing on this
azerty keyboard is too painful) but isn't (logical-pathname "sys:foo")
undefined behaviour? Aren't only capital letters allowed in logical
pathname namestrings?
What happens if you change that to
(setq z (logical-pathname (make-pathname :host "sys" :name "foo")))?
What about other exciting case variations?
[note: I'm not actually expecting this to make things massively
clearer, I just want to get a handle on things; I plan to take a week
to look at some lisp once I've finished proofreading my paper]
Cheers,
Christophe
--
Jesus College, Cambridge, CB5 8BL +44 1223 510 299
http://www-jcsu.jesus.cam.ac.uk/~csr21/ (defun pling-dollar
(str schar arg) (first (last +))) (make-dispatch-macro-character #\! t)
(set-dispatch-macro-character #\! #\$ #'pling-dollar)
> > * In message <sfwvgfu...@shell01.TheWorld.com>
> > * On the subject of "Re: correct use of :case in make-pathname"
> > * Sent on Wed, 28 Nov 2001 18:59:35 GMT
> > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> >
> > > Do I understand correctly that in
> > >
> > > (pathname-slot path :case ???)
> > >
> > > the case conversion is identical whether PATH is logical or physical?
> >
> > I personally think so. yes.
>
> it appears that we are alone :-(
>
> (setq z (logical-pathname "sys:foo"))
>
> (string= (pathname-name z :case :local)
> (pathname-name z :case :common))
>
> returns T for LW, AllegroCL, CMUCL, CLISP.
> what am I missing?
You're missing that pathname-name of a logical pathname should be
yielding, IMO, "FOO", not "foo". It should be case-folding to the
preferred case. I don't think logical pathnames should EVER return
"foo" for a pathname name whether you parse "FOO" or "foo" because
logical pathnames are intended as a least-common-denominator system
and they should not depend on file systems to have an upper/lower
distinction. If what I say is so, then the above STRING= will be true
because the true name is "SYS:FOO" not "sys:foo".
I don't see how the above STRING= can be true, btw, if the canonical
name is "sys:foo" btw, since (pathname-name z :case :local) would
return "foo" but (pathname-name z :case :common) would still return
"FOO".
So the above will always be true when :case :local is the same as
:case :common, i.e., when the preferred case of the file system is
uppercase.
(implies (string= (pathname-name pathname :case :local)
(pathname-name pathname" :case :common))
(eq (preferred-case (pathname-host pathname)) :uppercase))
[for hypothetical operations implies and preferred-case].
[This, though you may not see it as such, is exactly a restatement of
the problem I brought up in the first place; the reason that you
MUST NOT move items from slot of a pathname to slot of another
pathname by read/write in :local syntax. :case :local sometimes yields
uppercase results for preferred case and sometimes lowercase, since it
returns what the pathname host thinks is the right case, not something
that canonically represents the right case. In the case of logical pathnames,
their preferred case IS upper, so :case :common and :case :local happen to
agree. But if you stored them back in :local format in some other pathname,
like Unix, you'd screw things up if you used :local. So retrieve in :local
write in :local is not safe. But retrieve in :common write in :common is.]
> Sam Steingold <s...@gnu.org> writes:
>
> > > * In message <sfwvgfu...@shell01.TheWorld.com>
> > > * On the subject of "Re: correct use of :case in make-pathname"
> > > * Sent on Wed, 28 Nov 2001 18:59:35 GMT
> > > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> > >
> > > > Do I understand correctly that in
> > > >
> > > > (pathname-slot path :case ???)
> > > >
> > > > the case conversion is identical whether PATH is logical or physical?
> > >
> > > I personally think so. yes.
> >
> > it appears that we are alone :-(
> >
> > (setq z (logical-pathname "sys:foo"))
> >
> > (string= (pathname-name z :case :local)
> > (pathname-name z :case :common))
> >
> > returns T for LW, AllegroCL, CMUCL, CLISP.
> > what am I missing?
>
> I'm a long way from my documentation (translation: typing on this
> azerty keyboard is too painful) but isn't (logical-pathname "sys:foo")
> undefined behaviour? Aren't only capital letters allowed in logical
> pathname namestrings?
>
> What happens if you change that to
> (setq z (logical-pathname (make-pathname :host "sys" :name "foo")))?
> What about other exciting case variations?
These should probably yield the same since (logical-pathname "sys:foo")
asks that you parse the namestring "sys:foo" in the default way for
logical hosts, while :host "sys" :name "foo" asks to supply portions using
again the default case conventions for a logical host (since :case defaults
to :local, not, as i often uselessly dream of, :common). I think in both
cases therefore, you're going to get case translation because the logical
host should do case-folding. It's too annoying to have it just tell you
it's bad syntax.
> [note: I'm not actually expecting this to make things massively
> clearer, I just want to get a handle on things; I plan to take a week
> to look at some lisp once I've finished proofreading my paper]
heh.
> Sam Steingold <s...@gnu.org> writes:
>
> > > * In message <sfwvgfu...@shell01.TheWorld.com>
> > > * On the subject of "Re: correct use of :case in make-pathname"
> > > * Sent on Wed, 28 Nov 2001 18:59:35 GMT
> > > * Honorable Kent M Pitman <pit...@world.std.com> writes:
> > >
> > > > Do I understand correctly that in
> > > >
> > > > (pathname-slot path :case ???)
> > > >
> > > > the case conversion is identical whether PATH is logical or physical?
> > >
> > > I personally think so. yes.
> >
> > it appears that we are alone :-(
> >
> > (setq z (logical-pathname "sys:foo"))
> >
> > (string= (pathname-name z :case :local)
> > (pathname-name z :case :common))
> >
> > returns T for LW, AllegroCL, CMUCL, CLISP.
> > what am I missing?
>
> I'm a long way from my documentation (translation: typing on this
> azerty keyboard is too painful) but isn't (logical-pathname "sys:foo")
> undefined behaviour? Aren't only capital letters allowed in logical
> pathname namestrings?
>
> What happens if you change that to
> (setq z (logical-pathname (make-pathname :host "sys" :name "foo")))?
> What about other exciting case variations?
Sorry about the self-followup, but I've had another thought:
Firstly, (logical-pathname "sys:foo") is equivalent to
(logical-pathname "SYS:FOO") by section 19.3.1.1.7, unless you take
'word' in section 19.3.1 literally (which is probably contraindicated
by the existence of 19.3.1.1.7).
The only other thought I have to add at this point (I'll sleep on the
rest, I promise) is that I thought (I can't reference now) that the
case change was a function of the host, so common and local would be
the same for LPNs...?
> (setq z (logical-pathname "sys:foo"))
>
> (string= (pathname-name z :case :local)
> (pathname-name z :case :common))
>
> returns T for LW, AllegroCL, CMUCL, CLISP.
> what am I missing?
CLHS 19.3.1.1.7 Lowercase Letters in a Logical Pathname Namestring
When parsing words and wildcard-words, lowercase letters are
translated to uppercase.
Perhaps try it again without involving a parsing function?
I love pathnames.
-dan
--
http://ww.telent.net/cliki/ - Link farm for free CL-on-Unix resources
Kent> Raymond Toy <t...@rtp.ericsson.se> writes:
Sam> [I wonder what the lack of response to your message means, provided
Sam> that the behavior LW/CLISP and ACL/CMUCL _is_ different]
>>
>> It means that, at least for me, I don't understand the issues well
>> enough to comment. Plus CMUCL has its search-list feature that
>> muddies the picture. I was sufficiently confused by this a long time
>> ago when I changed a few things in CMUCL wrt to logical-pathnames.
Kent> If someone presented the search list feature and any issues it raised, I'd
Kent> be happy to comment. MACSYMA had a search list in it, and (a) I don't find
Kent> it interferes and (b) it's one of the most important reasons that you need
Kent> to get these other details right! If you do the merging wrong, search lists
Kent> don't work right...
Here is a basic description of CMUCL's search-lists. A search-list
path looks something like "slist:<unix-style-path>". It is
case-sensitive. slist must be defined by (setf (search-list "slist")
<search-paths>)
An example will make this clearer:
(setf (search-list "inc:")
("/usr/include/" "/usr/include/sys/"))
Then (load "inc:path/signal.h") will first look in /usr/include/ then
/usr/include/sys for the file path/signal.h. That is, it looks in
/usr/include/path/signal.h and /usr/include/sys/path/signal.h, in that
order.
Basically whatever is appended after the search-list name "inc:" is
appended to the possible values. (That's why the search-list paths
have to end in a slash.)
And you can't have a logical pathname and search-list with the same
name. (Maybe you can, but it's quite confusing.)
I think CMUCL's code is much better now wrt to case. The pathname
stuff is shared between the search-list stuff and the logical-pathname
stuff, so it's pretty confusing to get it all right.
I don't think I'd use CMUCL as a reference for pathname case
issues....
Ray