Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
On nil qua false [was: Re: On conditionals]
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 126 - 150 of 283 - Collapse all  -  Translate all to Translated (View all originals) < Older  Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Kaz Kylheku  
View profile  
 More options Nov 28 2001, 2:37 am
Newsgroups: comp.lang.lisp
From: k...@ashi.footprints.net (Kaz Kylheku)
Date: Wed, 28 Nov 2001 07:37:17 GMT
Local: Wed, Nov 28 2001 2:37 am
Subject: Re: On nil qua false [was: Re: On conditionals]

In article <87adx7gbcf....@teonanacatl.andreas.org>, Andreas Bogk wrote:
>As a feature, it feels like a convenience hack so you can write
>(if foo) instead of (unless (empty? foo)).

>That's not much of a gain, given that you have just violated the
>design rule of having a way to differentiate between a valid and an
>invalid result.

In places where the Scheme language report says that the result of an
expression is unspecified, or that an evaluation order is unspecified,
what design rule is being followed?

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Nov 28 2001, 2:39 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Wed, 28 Nov 2001 07:39:54 GMT
Local: Wed, Nov 28 2001 2:39 am
Subject: Re: On nil qua false [was: Re: On conditionals]
* Andreas Bogk
| I'd dispute that. Re-analyzing the the Axiom of Parallels in geometry
| resulted in the development of non-Euclidean geometry, which was a
| tremendous success.

  Did anything happen to Euclidean geometry because of this re-evaluation?

  Or did the development of non-Euclidean geometries prove useful in ways
  that did not impact the remainder of Euclid's The Elements _at_all_?  Was
  it not one of the amazingly interesting features of non-Euclidean
  geometry that it did _not_ contradict or have a stupid quarrel with the
  rest of his work?

  So why are you still here when you should be in comp.lang.dylan extolling
  the features of non-<whatever> Lisps?  Who do you think cares?  Invite
  Lisp people to your own very low-traffic forum to discuss this with you,
  rather than annoy people with your repetitive nonsense, OK?  Or are you,
  as I now strongly suspect, only posting in comp.lang.lisp because you
  think Lisp people should be "converted" to Dylan because nobody else are?

  By the way, what you call "axiom" is called "postulate" in Euclid because
  of the distinction that Aristotle drew between the two concepts.  But I
  suppose you do not recognize Euclid's The Elements as authoritative on
  what Euclid said, either.  "It is so because Euclid said so" seems to be
  an invalid argument to you, but I am afraid that I have no "logical"
  answer that I expect will sate your desire for pathological nonsense.

///
--
  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.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ray Blaak  
View profile  
 More options Nov 28 2001, 3:38 am
Newsgroups: comp.lang.lisp
From: Ray Blaak <bl...@telus.net>
Date: Wed, 28 Nov 2001 08:38:32 GMT
Local: Wed, Nov 28 2001 3:38 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Erik Naggum <e...@naggum.net> writes:
> | For the purposes of this discussion, the summary is: I don't buy that
> | metaphor, please use another one.

>   Then I will consider you a criminal in our little society, one who is
>   fighting "laws he consider immoral or meaningless" simply because he has
>   failed to think things through.

So who are you? Judge, jury and jailer?

How could criticism of Lisp in general and CL in particular be possibly
considered criminal? That is ridiculous. Criticism and discussion is hardly the
violation of any "law".

The only possible crime that could occur in the context of CL is to implement a
language that does not conform to the standard and then call it Common
Lisp. There are no other "laws" that could be violated.

When debating the merits of a language, however, anything goes, especially in a
usenet group.

Ideally, smart people who disagree about important issues offer criticisms.
Rebuttals are returned. In the ensuing debate the various tradeoffs are
realized and understood, and everyone is that much wiser, even if their
positions are not necessarily changed.

> * Erik Naggum
> > In time, you will see the wisdom that there are more than one right, that
> > the idea that there is "one right" is wrong, but that this does not mean
> > that one cannot determine that something will always be wrong no matter
> > what is right.

Even if you determine to your satisfaction that something is always wrong,
smart people can still disagree with you. If they are indeed incorrect, the
resulting discussion ideally should still be rewardingly illuminating to
all. If you get bored with repeating the same old arguments, you can point
people to a FAQ, let someone else carry the "fight", or else simply ignore
them.

Andreas's real crime here seems to be 1) that he is into Dylan, 2) thinks it's
in the Lisp family, and 3) has the audacity to criticize your favourite
language.

Where *else* can he discuss Lisp's shortcomings in a meaningful manner? The
people who can most intelligently correct the error of his ways hang out here.

--
Cheers,                                        The Rhythm is around me,
                                               The Rhythm has control.
Ray Blaak                                      The Rhythm is inside me,
bl...@telus.net                                The Rhythm has my soul.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Alain Picard  
View profile  
 More options Nov 28 2001, 4:29 am
Newsgroups: comp.lang.lisp
From: Alain Picard <apic...@optushome.com.au>
Date: 28 Nov 2001 20:27:37 +1100
Local: Wed, Nov 28 2001 4:27 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Andreas Bogk <andr...@andreas.org> writes:

> As a feature, it feels like a convenience hack so you can write
> (if foo) instead of (unless (empty? foo)).

> That's not much of a gain, given that you have just violated the
> design rule of having a way to differentiate between a valid and an
> invalid result.

Please, pay attention.  

People have already explained that

  1) There is already a large community who think it's a feature, not
     what you condescendingly call a "design rule violation"

  2) A lot of these people are very smart

  3) They've already given you examples of the idioms which are natural
     in CL to "differentiate between valid and invalid results".

So what remains?  It still looks like, to me, that it's a different way
of doing things than you're used to, so you immediately conclude it's bad.

One thing you'll learn, if you persevere with CL, is that some of the
brightest minds ever to touch a keyboard have contributed to its design,
directly or indirectly (i.e. via historical accidents).

I've learned that, when I read CLtL2, if I don't understand something,
or think I disagree with something, I need to look harder, because it
is almost certainly _I_ who is missing something.

I suggest you adopt that attitude for a couple of years, write lots of
code, and _THEN_ come tell this newsgroup why nil == () is bad in
real day-to-day CL usage, AND what you propose is better.

Who knows?  You just _might_ be a genius, come up with a great innovation,
and get the language changed.

--
It would be difficult to construe        Larry Wall, in  article
this as a feature.                       <1995May29.062427.3...@netlabs.com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Bruce Hoult  
View profile  
 More options Nov 28 2001, 4:36 am
Newsgroups: comp.lang.lisp
From: Bruce Hoult <br...@hoult.org>
Date: Wed, 28 Nov 2001 22:36:50 +1300
Local: Wed, Nov 28 2001 4:36 am
Subject: Re: On nil qua false [was: Re: On conditionals]
In article <861yijw8hi....@gondolin.local.net>, Alain Picard

<apic...@optushome.com.au> wrote:
> So what remains?  It still looks like, to me, that it's a different way
> of doing things than you're used to, so you immediately conclude it's bad.

> One thing you'll learn, if you persevere with CL, is that some of the
> brightest minds ever to touch a keyboard have contributed to its design,
> directly or indirectly (i.e. via historical accidents).

What *you* have missed, is that some of those exact same brightest minds
to ever touch a keyboard went from Common Lisp to design a new language
and did a few things differently the second time around.

Are you saying that you're brighter than Moon?

-- Bruce


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Janis Dzerins  
View profile  
 More options Nov 28 2001, 6:01 am
Newsgroups: comp.lang.lisp
From: Janis Dzerins <jo...@latnet.lv>
Date: 28 Nov 2001 12:42:56 +0200
Local: Wed, Nov 28 2001 5:42 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Ray Blaak <bl...@telus.net> writes:
> Erik Naggum <e...@naggum.net> writes:
> > | For the purposes of this discussion, the summary is: I don't buy that
> > | metaphor, please use another one.

> >   Then I will consider you a criminal in our little society, one who is
> >   fighting "laws he consider immoral or meaningless" simply because he has
> >   failed to think things through.

> So who are you? Judge, jury and jailer?

Look at yourself.

> How could criticism of Lisp in general and CL in particular be
> possibly considered criminal? That is ridiculous. Criticism and
> discussion is hardly the violation of any "law".

Smart people (as you like to call them) are concerned only about
constructive criticism. Criticism of things one does not understand is
not a constructive criticism.

--
Janis Dzerins

  Eat shit -- billions of flies can't be wrong.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kent M Pitman  
View profile  
 More options Nov 28 2001, 6:07 am
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Wed, 28 Nov 2001 11:06:54 GMT
Local: Wed, Nov 28 2001 6:06 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Bruce Hoult <br...@hoult.org> writes:
> In article <861yijw8hi....@gondolin.local.net>, Alain Picard
> <apic...@optushome.com.au> wrote:

> > So what remains?  It still looks like, to me, that it's a different way
> > of doing things than you're used to, so you immediately conclude it's bad.

> > One thing you'll learn, if you persevere with CL, is that some of the
> > brightest minds ever to touch a keyboard have contributed to its design,
> > directly or indirectly (i.e. via historical accidents).

> What *you* have missed, is that some of those exact same brightest minds
> to ever touch a keyboard went from Common Lisp to design a new language
> and did a few things differently the second time around.

It's not obvious how anything Alain has said neglects this.

Also, Steele, for example, designed Scheme first and then CL.  Was CL a
rejection of Scheme for him?  Was his later work with C++ a rejection of CL?
Was his later work with Java a rejection of C++?  I suspect some of the
answers here are "yes" and some "no", but I wouldn't know without asking him.
I point it out to say that the single-bit of information represented in
the yes/no answer to the question "used to work with X now works for Y?"
is not the same as the single-bit of information represented in the statement
"has rejected all aspects of X for Y".  I quote (or is it paraphrase, since
I'm not sure I have an exact wording that I think is best)
Pitman's Two-Bit Rule: when representing two bits of information,
use two bits to do it.

Further, as I have pointed out many times before, there is no "good/bad"
distinction in the abstract.  Good and bad are dictated by context.  When
you make a new language, you make a new ecology.  What is good and bad
in that new ecology is what makes sense there in context.

That's the reason that the apparent kludge of ()/#f being the same works in
CL.  Tons of other decisions are of similar kind.  NIL's are padded out for
return values where not supplied.  NIL can be car/cdr'd.  We use type
"designators" all over where other languages would use raw types only.
There is a certain design consistency here that is underappreciated, and that
I hoped to highlight in the spec when I invented the designator concept
where previously there had been only "a lot of special cases".  Just because
people are bad at articulating it doesn't mean they are stupid.  

And saying
 (when foo ...)
is not the same as saying
 (when (not (null foo)) ...)
at the intention level.  It carries a subtlely different connotation for
some of us.  The former, to me, asks "if there is a foo" and the latter asks
"if there foo is not empty".  These are represented the same in CL, but I
prefer the expressional sense of the former.  In my mind, when a list goes to
empty, I like to think of it as not existing.  I don't think of it as existing
but empty.  It works out programmatically nicely to have the two be the same.
It's fine for people to think otherwise, but it's not fine for them to pretend
that the language doesn't intend to support my way of thinking.

If you really want a language with no ability to pun on types, I
really do suggest Scheme.  Not just because it makes this decision
differently (or "right", if you prefer to say that) but because its
community will reinforce in you the notion that this is the only
possible legitimate point of view, and give you a generally warm sense
of fuzzy that you have come home.  Its leaders will also make it a
priority to ruthlessly seek out lurking places where anyone is punning
for convenience and to callously shun such people, and that will
probably make you feel good about your leaders and the community they
have created.  And that's WHY we have separate political parties, er,
languages.  Because people want different things.  In this political party,
we tolerate diverse points of view.  You can write (not (null x))
and I can write x.  We both know what each other means.  And our code
interacts.  If you don't like that, and prefer to interact with people
who agree with you that only one point of view is possible, then this is
not the language for you.  It will not just frustrate you on this point.
It will frustrate you on a whole host of issues where the design style
has been of similar character.

> Are you saying that you're brighter than Moon?

I'll save Alain from having to point out that this kind of remark is
not a useful debate tactic.  Also, you imply by this that Moon thinks
nil/false thing was done wrong in CL.  I personally doubt you'll get him
to make such a claim, but in any case it's unfair of either your or me
to associate him with a position without asking him to state it for himself.

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Andreas Bogk  
View profile  
 More options Nov 28 2001, 6:38 am
Newsgroups: comp.lang.lisp
From: Andreas Bogk <andr...@andreas.org>
Date: 28 Nov 2001 12:23:55 +0100
Local: Wed, Nov 28 2001 6:23 am
Subject: Re: On nil qua false [was: Re: On conditionals]

k...@ashi.footprints.net (Kaz Kylheku) writes:
> In places where the Scheme language report says that the result of an
> expression is unspecified, or that an evaluation order is unspecified,
> what design rule is being followed?

"Leave some freedom to the poor implementors."

I'll refrain from judging this.

Andreas

--
"In my eyes it is never a crime to steal knowledge. It is a good
theft. The pirate of knowledge is a good pirate."
                                                       (Michel Serres)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Janis Dzerins  
View profile  
 More options Nov 28 2001, 6:45 am
Newsgroups: comp.lang.lisp
From: Janis Dzerins <jo...@latnet.lv>
Date: 28 Nov 2001 13:37:56 +0200
Local: Wed, Nov 28 2001 6:37 am
Subject: Re: On nil qua false [was: Re: On conditionals]
t...@conquest.OCF.Berkeley.EDU (Thomas F. Burdick) writes:

> Janis Dzerins <jo...@latnet.lv> writes:

> > Kenny Tilton <ktil...@nyc.rr.com> writes:

> > > You're the rock star of Common Lisp. Get your head out of c.l.l. and
> > > go win us some converts.

> > I don't understand why some people are obsessed by the idea that
> > Common Lisp needs converts. I even think that converts that have to be
> > won should better stay away from Common Lisp.

> ...
> I do want a lot of people who are very intelligent, concentrating on
> other things, and fighting against their language, without realizing
> the extent to which they can do something about that, to learn Lisp.

This is how I _finally_ decided to switch to Common Lisp. But this is
not a "winning coverts" thing. It is a "there must be a better way"
thing that people must come to themselves.

> How did you learn that Lisp was worth learning (instead of doing
> whatever else you could have used the same time for)?

The enlightenment does not come in one day. That's the reason that
people who switch to Lisp because someone told it's "way cool" won't
work.

> If it hadn't been for a stroke of luck, I'd be working on C++
> compilers now, because I wouldn't have realized the extent to which
> a language could work with me.

The best thing that can be done about this is to make people aware of
Common Lisp. If they are at least a bit intelligent they will look
into it and find for themselves whether it is worth learning.

--
Janis Dzerins

  Eat shit -- billions of flies can't be wrong.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Bruce Hoult  
View profile  
 More options Nov 28 2001, 6:54 am
Newsgroups: comp.lang.lisp
From: Bruce Hoult <br...@hoult.org>
Date: Thu, 29 Nov 2001 00:54:05 +1300
Local: Wed, Nov 28 2001 6:54 am
Subject: Re: On nil qua false [was: Re: On conditionals]
In article <sfw7ksb6to1....@shell01.TheWorld.com>, Kent M Pitman

Of course you'd hav to ask him to find out, but I suspect that he's been
seeking a wider audience for his ideas, as first developed in the
various "lambda the ultimate ..." papers and no doubt refined since.

> Just because people are bad at articulating it doesn't mean they
> are stupid.  

That applies in both directions, though you wouldn't know it to read
many of the replies to myself and Andreas here.

> And saying
>  (when foo ...)
> is not the same as saying
>  (when (not (null foo)) ...)
> at the intention level.  It carries a subtlely different connotation for
> some of us.

And Andreas and I have much the same subtly different connotation.  The
only real difference is that we think that perpetuating the old "the
list is the fundamental datastructure in Lisps" myth is doing the Lisp
community (of which we are a part) a disservice.

We want to be able to use the *same* subtle connotation for data types
other than lists without somehow bringing in an implicit assumption that
a list is a valid value where you want to convey the idea that something
is either a string or doesn't exist, or is either a number or doesn't
exist, or is either a hash table or doesn't exist.

> If you really want a language with no ability to pun on types, I
> really do suggest Scheme.

Scheme is way too limiting.  We've got far more in common with CL than
we have with Scheme.  Scheme isn't even an option any more than Jensen &
Wirth Pascal is an option.

> If you don't like that, and prefer to interact with people
> who agree with you that only one point of view is possible, then this is
> not the language for you.  It will not just frustrate you on this point.
> It will frustrate you on a whole host of issues where the design style
> has been of similar character.

False premise, false conclusions.

> > Are you saying that you're brighter than Moon?

> I'll save Alain from having to point out that this kind of remark is
> not a useful debate tactic.

Funnily enough I know this.  The point of my making this remark is that
this is *exactly* the tactic that has been used against myself for some
time, and is now being used against Andreas in, for example, Alain's
message.

It is an invalid debating tactic and I totally reject implications based
upon it.

Whether particular things are good or bad should be decided on the basis
of logic, not on the basis of argument from authority.  Of course that
becomes difficult when you explicitly reject logic, as Erik just did.  I
don't know what that leaves, other than tradition and accident.

-- Bruce


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kent M Pitman  
View profile  
 More options Nov 28 2001, 7:14 am
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Wed, 28 Nov 2001 12:13:03 GMT
Local: Wed, Nov 28 2001 7:13 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Andreas Bogk <andr...@andreas.org> writes:
> k...@ashi.footprints.net (Kaz Kylheku) writes:

> > In places where the Scheme language report says that the result of an
> > expression is unspecified, or that an evaluation order is unspecified,
> > what design rule is being followed?

> "Leave some freedom to the poor implementors."

> I'll refrain from judging this.

Why are the implementors more deserving of freedom than the users?
Certainly there are more users.  And they do the activity of using much
more often than the implementors do the activity of implementing.

Implementation doesn't need to be easy, just possible.

Indeed, the whole point of an implementation is to centralize hard things
so that they are done only once.  Easy things don't need centralization.

I am one of the "authors" (such as we are) of the Revised Report on
Scheme.  I've participated in the meetings.  The "freedom" is not left
there for implementors, as far as I've ever been able to tell.  The
Scheme designers rarely discussed implementation beyond "is it
possible".  The freedom is there because the designers, as a group at
least, though there are individual exceptions and I like to claim I'm
one of them, have a phobia about the spec being too long, regardless
of whether that makes the spec "more useful".  As to "more useful", we
once had a discussion in the design committee in which some people
hinted that if the spec were more useful, the issue of usefulness
might cause control of the language to be taken from the committee and
put in the hands of users, who had a vested stake in the outcome.
That is, that the usefulness of something causes design principles to
be sacrificed and is the road to disaster.  Further, the committee
has, when it has spoken at all, which isn't much recently, expressed
considerably more interest in the issue of book compatibility than
implementation compatibility.  To put that in the bluntest of terms,
individuals on the committee have sometimes even gone so far as to say
that their focus has been on preserving the right of people who
disagree about how to write Scheme textbooks to assert what they like
without trampling one another.

I think CLTL was a similar stage of language evolution to Scheme.  It
was an attempt to make the words span the gap between differing
implementations, hoping that by leaving enough things unspecified, you
could make a lot of disparate behaviors conforming.  The CL community,
at any rate, decided this was not acceptable, and demanded that things
be made more compatible, that things left unspecified be made possible
to test for, etc.  We could have left things like evaluation order, or
the order of certain class precedence lists in classes created by
DEFCLASS, unspecified.  But that would have just hurt users in the
name of "implementation flexibility".

Language design is not about pleasing implementors.  (Just as "raising
kids" is not about "pleasing parents".)  There is a primary task to be
accomplished which drives, or ought to drive, the goodness of the
result.  Users of a language are not, or ought not be, secondary to
the process.  They are why we have languages.

Whatever one thinks of the NIL/false pun, one can hardly accuse it of
being there for "implementor convenience".  It was put there because some
users wanted it.  Some of us wish there were more such, not fewer such.
I really like the way it works in MOO, with "", #(), and errors being false,
too.  I definitely regard that the language would be poorer for my needs
if we moved away from such overlap instead of toward it.  

I also did not start out thinking this.  I used to rant at people
about not doing (NOT (NULL ...)) because various people thought I
should or because it just seemed fun to do.  But someone once pointed
out to me that it's easier to learn to "like" something than it is to
learn to "unlike" something.  I don't know if that's true, but one can
certainly find anecdotal evidence to suggest it might be.  And anyway,
I've come to like what CL does.  I doubt I could as easily come to
unlike it without some major problem coming up with it.  And I've been
programming Lisp relatively intensely for 20+ years without such a
major problem coming up, so I'm starting to doubt that it will.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kent M Pitman  
View profile  
 More options Nov 28 2001, 7:28 am
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Wed, 28 Nov 2001 12:26:14 GMT
Local: Wed, Nov 28 2001 7:26 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Bruce Hoult <br...@hoult.org> writes:
> > If you really want a language with no ability to pun on types, I
> > really do suggest Scheme.

> Scheme is way too limiting.  We've got far more in common with CL than
> we have with Scheme.  Scheme isn't even an option any more than Jensen &
> Wirth Pascal is an option.

I think this is not coincidence.  I think the cause of Scheme being
what you perceive as limiting and cause of Scheme making what you see
as the "right" choice on this issue are the forces of the same or similar
kind.  That is, you have a certain style of design and it leads to some
consequences you like and some you don't like.

> > If you don't like that, and prefer to interact with people
> > who agree with you that only one point of view is possible, then this is
> > not the language for you.  It will not just frustrate you on this point.
> > It will frustrate you on a whole host of issues where the design style
> > has been of similar character.

> False premise, false conclusions.

I wasn't really meaning to make the statement for the purpose of
advancing its logic.  It was making it to be honest-to-goodness
helpful.  I didn't want to say "If you don't like it, go elsewhere"
because this would sound like I was just trying to shun you, which
would not be a fair assessment.  I'm just saying that languages are
political parties and people should associate with one that supports
their view.  Moreover, as to this political party, its core membership
(that is, as embodied in J13) apparently agrees that the cost of
opening the existing standard for tinkering is prohibitively high.  It
is not up for debate.  I have to say "apparently agrees" and can't say
"agrees" since I'm not its spokesperson (no one is), but its actions
in having declined the chance to open itself for change do, I think,
more or less speak for themselves.  You're welcome to disagree with
whatever you like, and to stick around fuming over this, but the issue
is really not up for debate in any practical sense.  And I believe you
are just spinning your wheels and wasting valuable time (mine, yours,
and other people's) over something that isn't important enough.

Look, life is short.  We're all getting older.  The move to CL was
about putting Maclisp to bed and saying "it's time to argue over a new
set of things".  This discussion is very "maclisp" and is just done.
I don't expect to look back when I'm on my deathbed and say "I wish
I'd spent more time looking into Bruce's assertion I was wrong on
this".  And I don't want either of our tombstones to read "they almost
reached agreement about the empty-list/false thing".  I'm much more likely
to say "damn, I wish I could have back all those minutes I wasted
in that stupid, pointless discussion".  This has been talked to death.
There are no more points to be made.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Takehiko Abe  
View profile  
 More options Nov 28 2001, 8:43 am
Newsgroups: comp.lang.lisp
From: k...@ma.ccom (Takehiko Abe)
Date: Wed, 28 Nov 2001 13:42:57 GMT
Local: Wed, Nov 28 2001 8:42 am
Subject: Re: On nil qua false [was: Re: On conditionals]

In article <bruce-79ABC1.22365028112...@news.paradise.net.nz>, Bruce Hoult <br...@hoult.org> wrote:

> What *you* have missed, is that some of those exact same brightest minds
> to ever touch a keyboard went from Common Lisp to design a new language
> and did a few things differently the second time around.

Certainly Dylan was not intended to be a next Common Lisp. Its original
goal was different from CL's. I dug up info-mcl mailing list's archive
and located this:

  From Steve Strassmann
  Date: 1992-06-25
  Subject: RE: MCL Framework & Directions
  [...]

  MCL and Dylan are two very different products, and are expected to fill
  the different needs of two very different communities. [...]
  [...]

  Dylan, however, is not aimed at the Lisp market. It's aimed at the
  current market for static languages. We would definitely consider Dylan
  a failure if it only stole support from the lisp community and had no
  impact on the rest of the world. We think there are compelling reasons
  for a static programmer to seriously consider switching to Dylan, and
  we'll do everything we can to get them to do so!

[Note the last line.]

abe

--
<keke at mac com>


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Andreas Bogk  
View profile  
 More options Nov 28 2001, 8:56 am
Newsgroups: comp.lang.lisp
From: Andreas Bogk <andr...@andreas.org>
Date: 28 Nov 2001 14:55:17 +0100
Local: Wed, Nov 28 2001 8:55 am
Subject: Re: On nil qua false [was: Re: On conditionals]
Kent M Pitman <pit...@world.std.com> writes:

> > "Leave some freedom to the poor implementors."
> > I'll refrain from judging this.
> Why are the implementors more deserving of freedom than the users?

I'm not implying they do.  But they are deserving the freedom to
actually be able to implement, and to reach a consensus about the
standard if their implementation differ in some detail which would be
hard to change.

I think in a way a designer is a potential implementor, so he's often
in the same position.

> Implementation doesn't need to be easy, just possible.

I agree.  This seems to have been one of the design principles of
Dylan as well.

[lots of stuff I completely agree to snipped]

> Whatever one thinks of the NIL/false pun, one can hardly accuse it of
> being there for "implementor convenience".  It was put there because some

Nobody said that.

> users wanted it.  Some of us wish there were more such, not fewer such.
> I really like the way it works in MOO, with "", #(), and errors being false,
> too.  I definitely regard that the language would be poorer for my needs
> if we moved away from such overlap instead of toward it.  

How do you feel about the false-or(<type>) mechanism?  Wouldn't that
just be the generalization of that overlap in a cleaner way?

Andreas

--
"In my eyes it is never a crime to steal knowledge. It is a good
theft. The pirate of knowledge is a good pirate."
                                                       (Michel Serres)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Marco Antoniotti  
View profile  
 More options Nov 28 2001, 10:02 am
Newsgroups: comp.lang.lisp
From: Marco Antoniotti <marc...@cs.nyu.edu>
Date: 28 Nov 2001 10:02:23 -0500
Local: Wed, Nov 28 2001 10:02 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Andreas Bogk <andr...@andreas.org> writes:
> "Bradford W. Miller" <Bradford.W.Mil...@motorola.com> writes:

> > "A Short Ballad Dedicated to the Growth of Programs" by Ashwin Ram
> > http://www.lisp.org/humor/large-programs.html

> Nice read.  For comparison, here's the idiom the author seeked in
> Dylan:

> element(a-list, key, default: #f)

> which even works regardless of the type of the collection like lists,
> hashtables and vectors, and which allows for an alternative default
> value in case #f is a legal element of a-list.

This argument can be turned on its head.  As an example, the *ML* crowd
(Haskell included), would argue that either you'd have to program a
special failure value into the alist data type, or that an exception
should be raised if no value were to be found.

ASSOC, FIND and friends are annoying, as (agreeing with Paul Graham)
it is somewhat annoying to have separate abstractions for table
lookups.

This is somewhat strange and an oversight in view of the fact that
GETHASH does the right thing.  It accepts a default and returns two
values.

Cheers

--
Marco Antoniotti ========================================================
NYU Courant Bioinformatics Group        tel. +1 - 212 - 998 3488
719 Broadway 12th Floor                 fax  +1 - 212 - 995 4122
New York, NY 10003, USA                 http://bioinformatics.cat.nyu.edu
                    "Hello New York! We'll do what we can!"
                           Bill Murray in `Ghostbusters'.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kent M Pitman  
View profile  
 More options Nov 28 2001, 10:56 am
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Wed, 28 Nov 2001 15:54:59 GMT
Local: Wed, Nov 28 2001 10:54 am
Subject: Re: On nil qua false [was: Re: On conditionals]

Andreas Bogk <andr...@andreas.org> writes:
> > ... I definitely regard that the language would be poorer for my needs
> > if we moved away from such overlap instead of toward it.  

> How do you feel about the false-or(<type>) mechanism?  Wouldn't that
> just be the generalization of that overlap in a cleaner way?

(I reject your implicit suggestion that the word "clean" applies to
one of these approaches and not to the other.  There is nothing "unclean"
about correctly applying any well-defined semantics.  What feels "unclean"
to you, as nearly as I can tell, is that you don't want the definition
to be what the definition is.  But the language is defined as it is,
and since it's in no danger of changing, there is nothing unclean
about the use.)

But in answer to your question, no, the (FALSE-OR type) thing moves
in the wrong direction.  It IS a useful technology for places where it
was not possible to find a degenerate element within the set.

For example, had () and NIL and #f been all separate to start, I could
imagine arguing to make () false, just as I have noted that I'd be
happy if "" was false and #() was false.  However, I can't imagine
that a priori, I'd argue that (intern "NIL") should result in a false
value.  Absent history, I can't make a huge case that any given symbol
should be false.  So in a world where those were split, and where I
had no memory of this world, I think I'd argue that (FALSE-OR SYMBOL)
was the right way to talk about the union of boolean false and the
symbols, since the choice of any one symbol as a degenerate case
(absent a historical basis, as with Lisp) would be unfair in
Internationalization terms, if nothing else.  And certainly if I were
telling you to merge a faluse value with some random number seed, I
wouldn't try to figure out what a degenerate seed was so that I could
argue it should be false.  I'd just say (FALSE-OR RANDOM-STATE).

But there are places where there are natural nulls, and lists and
arrays (including, of course, strings) are among them.  I don't feel a
need for an extra type in a great many situations.  This is evident in
the number of applications that do (PUSH X (GETHASH A B)) where they
don't check to see if (GETHASH A B) returns NIL, NIL or NIL, T because
it doesn't matter to them.  Good language design is not done by
randomly changing a feature but by doing feature changes in
coordinated sets. So if we could declare a hash table of integers,
there might be cases where people usefully did (INCF (GETHASH A B))
without having to initialize (GETHASH A B) because they would know
that (GETHASH A B) would return 0, NIL when there was no element or 0,
T when an element had been set to 0.

Also, in languages where you have more than one false, you can choose
to do (EQ value 'particular-false-value) and to treat the other values
differently.  So you might want the type (AND (MEMBER NIL) type)
even though (FALSE-OR type) might mean the same thing.  It wouldn't
capture the intent I'm looking for.  

Keep in mind that in mixed data, the pun problem exists ANYWAY because
a lot of the time I'm making FOO's and representing them somehow. e.g.,
maybe as a standard class.  In that case, NIL can mean absence of FOO.
I can always safely do (gethash 'x *foo-table*) and test the result for
truth because I know there is no false-value in that table.  But suppose,
you say, a FOO is represented as a list.  Yes, then I have to worry the
list might be NIL, and a probelm might result.  SO I say back, suppose
a FOO is represented as a boolean.  (That would mean I only ever have
two of them.  Or maybe I have some special reason that booleans are enough.
Streams are like this, with terminal I/O and standard-input/standard-output
getting booleans that "represent" them as designators in Lisp.)  Confusion
CAN still result and having the datatypes laid out a certain way doesn't
make the world "clean", it just makes it "less error-prone".  It is all
just a matter of degree, not a binary matter of "good" and "bad".
And even as to degree, moving it in the direction of separation means
more typing for people, and some people seem to regard that as "good"
while others don't, so even the directionality is up for grabs.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Lieven Marchand  
View profile  
 More options Nov 28 2001, 11:38 am
Newsgroups: comp.lang.lisp
From: Lieven Marchand <m...@wyrd.be>
Date: 27 Nov 2001 22:15:15 +0100
Local: Tues, Nov 27 2001 4:15 pm
Subject: Re: On nil qua false [was: Re: On conditionals]

Andreas Bogk <andr...@andreas.org> writes:
> Of course, not all committee results are bad.  I just sometimes have
> that imagination of a painting designed by a committee of Rembrandt,
> Van Gogh and Dali.

In more artisanal times, like Rubens and probably Rembrandt still, a
painting was a committee work, where the master did the composition,
the foreground and other import stuff and one of his students might
fill in a tree or clouds in the background.

--
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


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Nov 28 2001, 11:53 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Wed, 28 Nov 2001 16:53:49 GMT
Local: Wed, Nov 28 2001 11:53 am
Subject: Re: On nil qua false [was: Re: On conditionals]
* Ray Blaak
| So who are you? Judge, jury and jailer?

  It is a metaphor, intended to show a particular attitude that has an
  exact parallel in the real world.  Grow a clue, now.

| Andreas's real crime here seems to be 1) that he is into Dylan, 2) thinks
| it's in the Lisp family, and 3) has the audacity to criticize your
| favourite language.

  Nonsense.  He speaks of what he does not know.  He also criticizes with
  no intention of resolving anything.  Common Lisp is not being designed at
  this time, and these things are so fundamental that there is no way his
  criticism can possibly stop, because they are not going to change.  There
  is no way this person is going to cease his complaints, because he will
  never be satisfied.  Why do you defend such people and activities?

| Where *else* can he discuss Lisp's shortcomings in a meaningful manner?
| The people who can most intelligently correct the error of his ways hang
| out here.

  No, the error of his ways is that he thinks that a newcomer to town
  should be _respected_ for disagreeing with the prevailing customs for no
  better reason than that they are different where he came from.  This is
  fantastically stupid in real life, too, and has a name: "an obnoxious
  tourist".  There is no confusion or error that anybody else can fix.

///
--
  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.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Nov 28 2001, 12:00 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Wed, 28 Nov 2001 17:00:03 GMT
Local: Wed, Nov 28 2001 12:00 pm
Subject: Re: On nil qua false [was: Re: On conditionals]
* Bruce Hoult
| What *you* have missed, is that some of those exact same brightest minds
| to ever touch a keyboard went from Common Lisp to design a new language
| and did a few things differently the second time around.

  But they designed a new language and set up a new community for it!  They
  did _not_ hang around in the Common Lisp community and whine about it.

| Are you saying that you're brighter than Moon?

  Please think about what you are _actually_ saying.

///
--
  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.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Nov 28 2001, 12:36 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Wed, 28 Nov 2001 17:36:37 GMT
Local: Wed, Nov 28 2001 12:36 pm
Subject: Re: On nil qua false [was: Re: On conditionals]
* Bruce Hoult
| Of course you'd hav to ask him to find out, but I suspect that he's been
| seeking a wider audience for his ideas, as first developed in the
| various "lambda the ultimate ..." papers and no doubt refined since.

  _I_ assume that Guy L. Steele is a very smart _professional_ and is not
  married to any of the languages on which he has worked.  Actually, I do
  not expect a _personal_ attachment from any seriously good Common Lisp
  programmer.  There are personal _values_, but they can and should be
  approached professionally, because one cannot always get what one wants,
  and it is incredibly stupid to whine for decades about something you did
  not get that was personal to you.

  The distinction between personal and professional seems to be lost on
  some people.  They tend to get into problems when they are required to be
  professional and detach personally.

| That applies in both directions, though you wouldn't know it to read
| many of the replies to myself and Andreas here.

  Of course you are the judge of this, because you have already made up
  your mind and you also get personal about it, so you are prevented from
  seeing the _professionalism_ in the replies you get.

| And Andreas and I have much the same subtly different connotation.  The
| only real difference is that we think that perpetuating the old "the
| list is the fundamental datastructure in Lisps" myth is doing the Lisp
| community (of which we are a part) a disservice.

  Why have you decided to find converts in comp.lang.lisp?  This looks more
  and more like a personal mission.  Invite those who want to discuss this
  stupid shit with you to comp.lang.dylan.  It does not look like anybody
  would disturb anyone.

| We want to be able to use the *same* subtle connotation for data types
| other than lists without somehow bringing in an implicit assumption that
| a list is a valid value where you want to convey the idea that something
| is either a string or doesn't exist, or is either a number or doesn't
| exist, or is either a hash table or doesn't exist.

  Why do you want to do this in Common Lisp when you have your perfect
  little toy language Dylan that gets it right?  Is this how you idiots
  think that people will choose Dylan?  Insult the best language on earth,
  take criticism personally, be obnoxiously obtuse and do not get the
  point, then give them Dylan in shining armor as the answer.  Good luck.

| Scheme is way too limiting.  We've got far more in common with CL than
| we have with Scheme.  Scheme isn't even an option any more than Jensen &
| Wirth Pascal is an option.

  Why do you have this desire to have things in common with other people?
  That looks like personal insecurity to me.  Is not Dylan enough for you?
  Do you need to reach out and find people to disagree strongly with just
  to feel you have something in "common" with them that you do not focus
  on?  If you have so much in common with somebody, why spend your time
  carping about differences?

  None of this makes any _sense_.  I believe you are just trolls from a
  community that has no future and then you attack the closest competitor
  you think you can annoy into supporting you.

| Funnily enough I know this.  The point of my making this remark is that
| this is *exactly* the tactic that has been used against myself for some
| time, and is now being used against Andreas in, for example, Alain's
| message.

  You still have not figured out that there is a difference between people
  who made up their mind to be outsiders and those who have not.  Please do.

| Whether particular things are good or bad should be decided on the basis
| of logic, not on the basis of argument from authority.

  What kind of idiot _are_ you?  Geez, do you even _believe_ this crap?
  Good and bad _are_ arguments from authority, you annoying little shit.
  If you think logic helps, consider this: The premises on which you base
  your "logic" eventually turn into arguments from authority, no matter
  where you start.  Why is this?  Good and bad do not exist in nature.
  There is no absolute test for goodness or badness out there that is
  independent of people.  Do you think there is, Bruce Hoult?  Do you think
  if you research long enough, you will find elemental particles of good
  and bad that can form the basis of a logic that all people can agree on?

  Good and bad are the results of people who want to live together.  This
  means they _have_ an authority higher than themselves which they accept.
  It can be some funny deity or it can be the fuzzy "community" or it can
  be a set of law and lots of strange things, but people happen to agree on
  what good and bad should be considered in _reference_ to.  A standard of
  ethics, in the non-technical meaning of "standard" _is_ an authority.
  Those who reject it are considered _bad_guys_ in that community.  We have
  a standard for a language that we accept and those who keep quibbling
  over it and when there is no possible way it could ever stop, because
  there is no possible way to change what they keep carping about for no
  good reason are _bad_guys_ to this community.

| Of course that  becomes difficult when you explicitly reject logic, as
| Erik just did.  I  don't know what that leaves, other than tradition and
| accident.

  I just rejected logic?  I reject logic as the proper means to resolve
  ethical problems.  Does that mean I reject _logic_?  You really _are_
  quite insane.  If someone says I should use classical mechanics to learn
  to drive a car, and I think this is inappropriate even though there are
  many elements of mechanics (including the pun) in driving cars, do I
  reject classical mechanics?  Or do I reject its _application_?

  For someone who thinks logic is so great a univeral problem-solver, you
  sure have a funny way of arriving at _your_ conclusions.

///
--
  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.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Marco Antoniotti  
View profile  
 More options Nov 28 2001, 12:43 pm
Newsgroups: comp.lang.lisp
From: Marco Antoniotti <marc...@cs.nyu.edu>
Date: 28 Nov 2001 12:42:53 -0500
Local: Wed, Nov 28 2001 12:42 pm
Subject: Re: On nil qua false [was: Re: On conditionals]

This discussion made me wonder about the status of ASSOC and FIND, and
what would mean to "change the standard".

CLHS reports:

find item sequence &key from-end test test-not start end key => element
assoc item alist &key key test test-not => entry
gethash key hash-table &optional default => value, present-p

Do you think it would be too much of a change to request the
vendors/implementors to change the behavior of the implementation in
such a way that

find item sequence &key from-end test test-not start end key default => element, present-p
assoc item alist &key key test test-not default => entry, present-p

(Of course a better writeup is necessary).

Also, what could be an "agreed upon and simple" machinery such that
all the implementations could check for this "extension"?

Cheers

--
Marco Antoniotti ========================================================
NYU Courant Bioinformatics Group        tel. +1 - 212 - 998 3488
719 Broadway 12th Floor                 fax  +1 - 212 - 995 4122
New York, NY 10003, USA                 http://bioinformatics.cat.nyu.edu
                    "Hello New York! We'll do what we can!"
                           Bill Murray in `Ghostbusters'.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ray Blaak  
View profile  
 More options Nov 28 2001, 12:56 pm
Newsgroups: comp.lang.lisp
From: Ray Blaak <bl...@telus.net>
Date: 28 Nov 2001 09:54:05 -0800
Local: Wed, Nov 28 2001 12:54 pm
Subject: Re: On nil qua false [was: Re: On conditionals]

Erik Naggum <e...@naggum.net> writes:
> Why do you defend such people and activities?

I object only to his being called a criminal. The metaphor is not applicable
since there are no laws being violated. "Obnoxious tourist" would be much more
accurate, and while despicable, is not a crime in any part of the world that I
know of.

He is only talking for Christ's sake. Debunk him or ignore him.

--
Cheers,                                        The Rhythm is around me,
                                               The Rhythm has control.
Ray Blaak                                      The Rhythm is inside me,
bl...@telus.net                                The Rhythm has my soul.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kaz Kylheku  
View profile  
 More options Nov 28 2001, 12:57 pm
Newsgroups: comp.lang.lisp
From: k...@ashi.footprints.net (Kaz Kylheku)
Date: Wed, 28 Nov 2001 17:57:35 GMT
Local: Wed, Nov 28 2001 12:57 pm
Subject: Re: On nil qua false [was: Re: On conditionals]

In article <87y9krcf5g....@teonanacatl.andreas.org>, Andreas Bogk wrote:
>k...@ashi.footprints.net (Kaz Kylheku) writes:

>> In places where the Scheme language report says that the result of an
>> expression is unspecified, or that an evaluation order is unspecified,
>> what design rule is being followed?

>"Leave some freedom to the poor implementors."

>I'll refrain from judging this.

But not from judging the role of NIL in Lisp.

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Nov 28 2001, 1:04 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Wed, 28 Nov 2001 18:04:19 GMT
Local: Wed, Nov 28 2001 1:04 pm
Subject: Re: On nil qua false [was: Re: On conditionals]
* Marco Antoniotti
| Also, what could be an "agreed upon and simple" machinery such that
| all the implementations could check for this "extension"?

  I think a new package named COMMON-LISP-2002, say, which implements the
  new symbols and semantics, would be the way to go.

///
--
  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.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Nov 28 2001, 1:21 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Wed, 28 Nov 2001 18:21:43 GMT
Local: Wed, Nov 28 2001 1:21 pm
Subject: Re: On nil qua false [was: Re: On conditionals]
* Ray Blaak
| I object only to his being called a criminal. The metaphor is not applicable
| since there are no laws being violated.

  The metaphor does not concern _what_ one disregards, considers oneself
  above, disrespects, etc, but _that_ one knows better than the community
  and that if there is ever some disagreement, the community is wrong for
  making its choices.

| "Obnoxious tourist" would be much more accurate, and while despicable, is
| not a crime in any part of the world that I know of.

  Ok, so you have a personal hangup about "criminal" and only think it
  concerns "crime", and not the personal attitude towards authority.  I
  shall make a small note of this, and that you refuse to get the point.
  Fine with me.

///
--
  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.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Messages 126 - 150 of 283 < Older  Newer >
« Back to Discussions « Newer topic     Older topic »