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
What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)
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 176 - 200 of 572 - 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
 
Christopher Browne  
View profile  
 More options Mar 15 2002, 1:06 am
Newsgroups: comp.lang.lisp
From: Christopher Browne <cbbro...@acm.org>
Date: 15 Mar 2002 01:01:16 -0500
Local: Fri, Mar 15 2002 1:01 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)
Centuries ago, Nostradamus foresaw when Rahul Jain <rj...@sid-1129.sid.rice.edu> would write:

> d...@goldshoe.gte.com (Dorai Sitaram) writes:

> > Maybe CL critiques of Scheme should proceed more along the lines of
> > "Scheme is just a Lisp" rather than "Scheme is not a Lisp".  :-/

> But why should we, or anyone else, tie down scheme to being "just a
> lisp"? Let the scheme community do what they want, but don't define
> scheme as a "superior lisp". I just don't see the point in scheme
> clinging to the name "lisp" when the point of the name scheme was so
> that it wasn't percieved as lisp!

If they so wanted to avoid the perception of association with Lisp,
they obviously didn't do a very good job of writing the standard.

After all, after, if what you suggest is true, namely that they
intended dissociation from Lisp, they broke that in the second
sentence of the standard by describing Scheme as a "dialect of the
Lisp programming language."

Kinda stupid to have the goal of dissociation and then start the
standard by describing how it's an instance of a Lisp...
--
(concatenate 'string "cbbrowne" "@acm.org")
http://www.ntlug.org/~cbbrowne/
Rules of the Evil Overlord #26. No matter how attractive certain
members of the rebellion are, there is probably someone just as
attractive who is not desperate to kill me. Therefore, I will think
twice before ordering a prisoner sent to my bedchamber.
<http://www.eviloverlord.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.
Discussion subject changed to "Why is Scheme not a Lisp?" by Erik Naggum
Erik Naggum  
View profile  
 More options Mar 15 2002, 1:12 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Fri, 15 Mar 2002 06:12:05 GMT
Local: Fri, Mar 15 2002 1:12 am
Subject: Re: Why is Scheme not a Lisp?
* Kent M Pitman

> Hygenic macros solve a problem that CL does not have.
> (They solve a problem introduced by Lisp1-ness. Heh.)
> I see no need for these whatsoever.

* Thomas Bushnell, BSG
| Hrm, maybe this is true, but I'm not sure about it.  There is a root
| problem that I think CL still has, but maybe not.  Requires more thought
| before I'd be confident either way.  (And another close read of Chris
| Hansen's paper.)  But maybe you could say why you think the problem
| exists in Scheme but not CL?

  Briefly put, the single namespace means that any variables used by the
  macro would cause any user-defined functions with the same name to become
  unusable in the body of the macro.  This requires a solution, and the
  solution is both real symbols, packages, and two namespaces, but in
  Scheme, they held on to the single namespace and had to invent hygienic
  macros, instead.  In Common Lisp, there is no danger of trampling on the
  functional value of a symbol just because you bind it lexically as a
  variable, so the body of the macro is undisturbed by any overlap in
  usage.  Also, since we have the ability to generate a symbol that cannot
  be reached by any name by the reader -- it is not interned in any package
  -- using either make-symbol or gensym, we have a choice of exporting a
  variable (or even function) from the macro to the body or to hide it with
  an invisible symbol.  Using such generated symbols poses no worse
  problems for any competent programmer than writing hygienic macros.
  There are even macros around that "rebind" variables hygienically.

  Thus hygienic macros is a necessary solution to a problem that arose from
  several bad design decisions in Scheme that plague the language in more
  ways than just requiring hygienic macros -- at least as seen from Common
  Lisp.  The single namespace, the lack of first-class symbols, exacerbated
  by the lack of packages, and the need for make-shift solutions to what
  should not have been problems, are all among the things that will
  continue to create problems.  Scheme therefore has to return to the
  drawing board and redesign itself instead of dragging this bggage along
  into the future.  At least it should try again with first-class symbols
  and packages.

///
--
  In a fight against something, the fight has value, victory has none.
  In a fight for something, the fight is a loss, victory merely relief.


 
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.
Thomas Bushnell, BSG  
View profile  
 More options Mar 15 2002, 1:30 am
Newsgroups: comp.lang.lisp
From: tb+use...@becket.net (Thomas Bushnell, BSG)
Date: 14 Mar 2002 22:25:08 -0800
Local: Fri, Mar 15 2002 1:25 am
Subject: Re: Why is Scheme not a Lisp?

Erik Naggum <e...@naggum.net> writes:

[ way too much ]

Was any of that *not* exactly the same kind of thing you said you
*don't* want here, at least, not when the languages are reversed?

It's so filled with mindless boosterism, the technical content is
almost absent.  But, taking a gander at the technical content, the
issue in your mind seems to be shadowing of global function names.

Can't the same thing happen with shadowing of top-level variable
names?

(As for the gensym issue, of course, gensym-like-solutions are exactly
how Scheme implementations implement hygenic macros.)

Thomas


 
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 Mar 15 2002, 1:40 am
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Fri, 15 Mar 2002 06:39:23 GMT
Local: Fri, Mar 15 2002 1:39 am
Subject: Re: Why is Scheme not a Lisp?
tb+use...@becket.net (Thomas Bushnell, BSG) writes:

> Kent M Pitman <pit...@world.std.com> writes:
...
> > The basic concept is to clip the effect of call/cc so that it closes over
> > only a certain amount of the pending "stack", not everything back to
> > creation.

> Oh, I understand; yeah that's a reasonable desire.  I still wonder (no
> need to answer if you don't like), what's the reason?  It sounds like
> an efficiency tweak, but I wonder what the semantic advantages would
> be.  I'll look up and see if I can find an answer myself, but I'd
> appreciate pointers if anyone has some.

It has to do with externalization.

I used to see the Actor stuff that Henry Leiberman would use at the MIT
AI Lab printing out continuations to hand to objects in other machines.
The problem is that this exposes internal details of the running image
that go beyond the scope of the task to be performed...  Plus there are
some conceptual issues that have to do with GC that get involved, too,
I think.  I've not thought about it in a while so my brain may be fuzzy
on the details.


 
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 Mar 15 2002, 1:40 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Fri, 15 Mar 2002 06:40:31 GMT
Local: Fri, Mar 15 2002 1:40 am
Subject: Re: Why is Scheme not a Lisp?
* Thomas Bushnell, BSG
| Except there hasn't been such "pathetic whining", except for your
| amazing diatribes.  It would be funny if it weren't so sad.

  I am saddened that you are so deep into denial that you cannot even see
  what you are doing.  Please seek help to get out your anger rut.  At the
  very least, take a break from this newsgroup for a couple weeks.  You are
  too wound up to be able to think unclouded by emotion, and this does you
  no good.  You need to learn to deal with both diversity of opinion and
  the adversity of rejection of your opinions.  I also suggest you talk to
  someone about how you cope with cognitive dissonance.  Quit lying about
  me and what I say, want, or intend, and there is no need for me to post
  any correctives to your lies, either.  Now is a good time for you to zoom
  out and think carefully about what you want.  In case it is not clear: I
  want you noise-polluting Scheme freaks out of here, because there is very
  strong evidence of a serious culture clash whenever any one of you have
  the bad taste to wander into this forum or cross-post here.  And please,
  it is not because we do not handle disagreement -- we have plenty of it
  -- it is because you cannot deal with us being right and you being wrong
  in this newsgroup even if you have always been patted on the back and got
  the best grades for what you parrot from another forum.  If technical
  issues matter, if decisions of language design are made on technical
  grounds, and if call-with-current-continuation is a technically superior
  idea, how come no other language has this construct?  Either you have to
  face that "technical" does nto matter, or that this feature is no good.
  That is a question you do not receive where everybody agrees it is the
  best thing since sliced bread and there is something wron with the rest
  of the world for not having it, but that agreement does not exist here.
  It is such things that make up the reasons for splitting a community.
  Again, it is not because people cannot handle disagreement, it is just
  that some things are supposed to be agreed upon in a community -- they
  are precisely what the community is based on, it is because people agree
  on these things even though they disagree on a lot of others that they
  have come together.  Even if people fight all the time for what they
  think is right, there is serious psychological value in coming home to
  someone who love you for who you are and not have to fight.  That is what
  normal people seek in a reasonable community -- a place where people
  agree with them on certain things.  For instance, if people have to fight
  for their desire to use Common Lisp all day long and they have to face
  stupid and prejudiced people who denigrate Lisp and make their lives so
  much less enjoyable, they would naturally want to come to comp.lang.lisp
  and find people who agree with them that Common Lisp is a great language
  -- but that is precisely what you fucking annoying Scheme freaks deny us,
  what those who have some idiotic gripe with the standard deny us, what
  those who post web pages whining about braindamaged conditionals deny us,
  etc.  There are just some decisions we have made, we agree on them and
  their outcome, and we do not want to fight that battle over and over and
  over just because some of those who have not made that decision and who
  have their own forum to feel safe and secure in, choose to invade us with
  a constant barrage of annoying attitude problems.  I find you stupid
  dorks incredibly inconsiderate and rude, and I respodn to your total lack
  of civility in storming a political party meaning, or a church, or an
  abortion clinic, or a radio or TV station, or a newsgroup, with an agenda
  that basically says: "You guys are all wrong, and we are going to convert
  you!"  Such idiotic wars is not what technical newsgroups are for.  If
  you Scheme freaks want this kind of forum, I suggest you create a new
  forum, comp.lang.lisp.advocacy, where fools can bash eachothers' heads
  in, while adults can explore the space that opens up before them because
  they are comfortable with having made a particular decision.

  (I made that all one paragraph so people who read only the first should
  not get away with skipping all the juicy bits.)

///
--
  In a fight against something, the fight has value, victory has none.
  In a fight for something, the fight is a loss, victory merely relief.


 
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 Mar 15 2002, 1:48 am
Newsgroups: comp.lang.lisp
From: Kent M Pitman <pit...@world.std.com>
Date: Fri, 15 Mar 2002 06:48:27 GMT
Local: Fri, Mar 15 2002 1:48 am
Subject: Re: Why is Scheme not a Lisp?
tb+use...@becket.net (Thomas Bushnell, BSG) writes:

> Erik Naggum <e...@naggum.net> writes:

> [ way too much ]

> Was any of that *not* exactly the same kind of thing you said you
> *don't* want here, at least, not when the languages are reversed?

> It's so filled with mindless boosterism, the technical content is
> almost absent.  But, taking a gander at the technical content, the
> issue in your mind seems to be shadowing of global function names.

> Can't the same thing happen with shadowing of top-level variable
> names?

No, it can't.  If the variable is in the same package and you shadow it,
then you presumably meant to.  In general the only top level variables
in CL are specials, and one doesn't bind them without a purpose.

Good style in macros is never to reference any variables free except those
named by the macro caller or except specials or except variables you
document that you will capture.

> (As for the gensym issue, of course, gensym-like-solutions are exactly
> how Scheme implementations implement hygenic macros.)

That's not really true.  Not the same gensyms as in CL.  That is, in
hygiene systems involving painting, symbols are painted without regard to
whether they are going to need to be gensymed, and list structure identity
is violated without regard to whether it is literal quoted lists or
semantically meaningful programs.  Lots more gensyms are made than are needed.

Sometimes people say this doesn't matter.  But I find it to be the same kind
of doesn't matter as "it doesn't matter if the police search your house when
you're out for the day. as long as you're doing nothing illegal, they
will leave it as they found it, and it will not matter that they were there".
To me, it does matter.  Among other things, it exposes the processed program
text to bugs due to errors in the "doesn't matter" processing, just as my
delicate glass objects are exposed to risk if the police screw up and bump
a table they shouldn't while they're making a "doesn't matter" search of
my house.

While working on T in 1981, I had prototyped a solution to this which
I never got to publishing.  A couple years later, Bawden came up with
and did publish more or less the same idea as I had been working on
and even gave it a nice name (I think it was called "syntactic
closures" ...?) but the Scheme community did not go in that direction.
They went with the Kohlbecker painting solution instead, which I don't
endorse.


 
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 Mar 15 2002, 2:07 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Fri, 15 Mar 2002 07:07:38 GMT
Local: Fri, Mar 15 2002 2:07 am
Subject: Re: Why is Scheme not a Lisp?
* Erik Naggum
| [ way too much ]

* Thomas Bushnell, BSG
| Was any of that *not* exactly the same kind of thing you said you *don't*
| want here, at least, not when the languages are reversed?
|
| It's so filled with mindless boosterism, the technical content is almost
| absent.

  Take a long break, will you?  Your mind is no longer able to deal with
  the _purpose_ that a normal, rational, sane person would have in reading
  and posting to a technical newsgroup.  Just get rid of your anger.  It is
  misplaced and counterproductive, and you have become so hypersensitive to
  what you perceive as hostilities that you completely fail to understand
  that you are by now _causing_ most of it.

  If you want people to agree with you that Scheme is such a great
  language, when it clearly is not _universally_ so, comp.lang.scheme
  should be your chosen forum.  Ov here, where there is no such "safe
  heven" from criticism, you just have to learn to cope with rejection of
  your core beliefs or get the hell out of here.  Scheme is _not_ protected
  from criticism in this forum.  When someone thinks Scheme sucks so bad it
  used to be abolished, they are likely to say so here, but _not_ in
  comp.lang.scheme, because that would be trolling.  This should not a big
  issue -- it is how all human forums works.  You guys should just figure
  out that your local belief that "Scheme is a superior Lisp" is _false_ in
  comp.lang.lisp, even though it is the raison d'être for comp.lang.scheme
  and therefore am unquestioned truth there.

  But take long a break, Thomas Bushnell!  You really _need_ it, now.  Find
  your way back to whatever desire or purpose prompted you to read and post
  to comp.lang.lisp.   This is not a proper forum for venting your spleen
  about anyone.  You, of all people, should know that, being as you wave
  the "charter" and want to control what is permissible here.

///
--
  In a fight against something, the fight has value, victory has none.
  In a fight for something, the fight is a loss, victory merely relief.


 
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.
Thomas Bushnell, BSG  
View profile  
 More options Mar 15 2002, 2:10 am
Newsgroups: comp.lang.lisp
From: tb+use...@becket.net (Thomas Bushnell, BSG)
Date: 14 Mar 2002 23:05:01 -0800
Local: Fri, Mar 15 2002 2:05 am
Subject: Re: Why is Scheme not a Lisp?
Kent M Pitman <pit...@world.std.com> writes:

> No, it can't.  If the variable is in the same package and you shadow it,
> then you presumably meant to.  In general the only top level variables
> in CL are specials, and one doesn't bind them without a purpose.
> Good style in macros is never to reference any variables free except those
> named by the macro caller or except specials or except variables you
> document that you will capture.

Um, so it sounds like the answer is "yes, it *does* happen with
top-level variables, but because of style and packaging
considerations, no problems actually come up".  (Which is a perfectly
good explanation; given that fact, I agree that CL doesn't really need
a hygenic macro system the way Scheme does.

> [In Scheme]
> Lots more gensyms are made than are needed.

Indeed, this is true; I think the expectation is that optimizing
compilers will notice the unused gensyms and elide them cleanly.
(Whether that is done in practice or not is something I don't really
know.)  

> They went with the Kohlbecker painting solution instead, which I don't
> endorse.

Isn't that just one implementation strategy?  I thought there were
several quite different underlying implementations possible (and in
use), with painting being only one of the alternatives.  (I'm close to
the extent of my depth here, so forgive my ignorance if the answer is
obvious.)

 
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.
Discussion subject changed to "What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)" by Bruce Hoult
Bruce Hoult  
View profile  
 More options Mar 15 2002, 2:23 am
Newsgroups: comp.lang.lisp
From: Bruce Hoult <br...@hoult.org>
Date: Fri, 15 Mar 2002 20:23:15 +1300
Local: Fri, Mar 15 2002 2:23 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)
In article <87vgbyz9jo....@photino.sid.rice.edu>,
 Rahul Jain <rj...@sid-1129.sid.rice.edu> wrote:

> Bijan Parsia <bpar...@email.unc.edu> writes:

> > Is ML a Lisp?

> I think that if scheme is a lisp, then it would be a very strange
> concept to call ML not a lisp. ML and Scheme are on oppposite ends of
> one spectrum (static typing) that Common Lisp is in the middle
> of. However, in most other regards, ML can pretty much be considered
> to be closer to scheme than it is to common lisp.

Scheme and ML fail my "Can you easily transliterate textbook programs
from one language into the other language?" test.  Scheme examples make
frequent use of runtime polymorphism.  ML examples make frequent use of
implicit currying.

> > I'm a bit unclear about the "notation for functions in terms of
> > conses" requirement, also.

> I think he basically means that code is expressed as cons-trees.

I don't see why that is important for languages that don't have "eval"
or procedural macros, such as ML, Dylan, and (believe it or not) Scheme
until recently.

-- 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.
Erik Naggum  
View profile  
 More options Mar 15 2002, 2:36 am
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.net>
Date: Fri, 15 Mar 2002 07:36:34 GMT
Local: Fri, Mar 15 2002 2:36 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)
* Christopher Browne
| If they so wanted to avoid the perception of association with Lisp,
| they obviously didn't do a very good job of writing the standard.

  It serves a standard well to be accurate about its heritage (which I have
  pointed out that it is not, ironically).  There is no point in talking
  about it when teaching the language, because those who are learning it
  are most probably not aware of what the heritage means in the first place
  -- and if you have paid attention, you will notice that such historical
  things as language families is not foreign to me, but confused marketing
  is _the_ issue.

  I note in passing that the Dylan Reference Manual completely avoids any
  reference to Lisp.  Whatever some propagandists think, this can be used
  to send them on their way back to comp.lang.dylan.  How useful!

  I note in passing that reading the RnRS documents is not what _I_ would
  recommend anyone to do who were not ready to understand a lot more than
  they need to program in it.

| After all, after, if what you suggest is true, namely that they intended
| dissociation from Lisp, they broke that in the second sentence of the
| standard by describing Scheme as a "dialect of the Lisp programming
| language."
|
| Kinda stupid to have the goal of dissociation and then start the standard
| by describing how it's an instance of a Lisp...

  Only if you have only one-bit answers.

///
--
  In a fight against something, the fight has value, victory has none.
  In a fight for something, the fight is a loss, victory merely relief.


 
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.
Discussion subject changed to "Why is Scheme not a Lisp?" by Rahul Jain
Rahul Jain  
View profile  
 More options Mar 15 2002, 2:40 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 01:36:22 -0600
Local: Fri, Mar 15 2002 2:36 am
Subject: Re: Why is Scheme not a Lisp?
tb+use...@becket.net (Thomas Bushnell, BSG) writes:

> Some things that CL might profitably borrow from Scheme would be
> proper tail recursion

if only anyone could define what is "proper" on all concievable
platforms.

> and hygenic macros.

That's been done by Dorai Sitaram, "macros by example".

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Thomas Bushnell, BSG  
View profile  
 More options Mar 15 2002, 2:50 am
Newsgroups: comp.lang.lisp
From: tb+use...@becket.net (Thomas Bushnell, BSG)
Date: 14 Mar 2002 23:50:24 -0800
Local: Fri, Mar 15 2002 2:50 am
Subject: Re: Why is Scheme not a Lisp?

Rahul Jain <rj...@sid-1129.sid.rice.edu> writes:
> tb+use...@becket.net (Thomas Bushnell, BSG) writes:

> > Some things that CL might profitably borrow from Scheme would be
> > proper tail recursion

> if only anyone could define what is "proper" on all concievable
> platforms.

Um, is there really a problem here?  Proper tail recursion is defined
in terms of the space complexity of the computation.  You have to give
a careful definition of which syntactic contexts count as a "tail
call".  

The Scheme standard requires that an unbounded number of active tail
calls must be supported; there may be other ways of saying the same
idea.

According to the Scheme standard, a more formal definition is in the paper:

William Clinger. Proper Tail Recursion and Space Efficiency. To appear
in Proceedings of the 1998 ACM Conference on Programming Language
Design and Implementation, June 1998.

Thomas


 
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.
Rahul Jain  
View profile  
 More options Mar 15 2002, 3:00 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 01:52:00 -0600
Subject: Re: Why is Scheme not a Lisp?
ces...@qnci.net (William D Clinger) writes:

> If this last remark were true, it would imply that the inventor
> of Lisp holds opinions that imply that CL is not in the Lisp
> family.

I think that CL is different enough from the original LISP that it
_could_ be considered a different language. Just like C99 could be
considered a different language than K&R C, but even more so. But the
issue is that the CL community traces direct lineage to the original
LISP community, and as Kent has repeatedly claimed, that's what
matters when defining what a language is and is not. Scheme is a
"fork" from that community of people who wanted very different things
than what the mainstream Lispers wanted.

> Let me hasten to add that, in my opinion, CL is indeed within
> the Lisp family of languages, and that I strongly suspect that
> John McCarthy holds a similar opinion.

Yes, I think that's true more because of the reasoning I gave above
than any feature list.

While McCarthy's list is a nice summary of the ideas he considers
essential to a Lisp, it doesn't by any means cover what others want
from Lisp nor what distingushes Lisp from anything else.

Personally, I require at least symbols with packages, complete macros,
compiler macros, an object system with various features I won't
enumerate here, reader macros, and conditions from a Lisp. But I don't
bother trying to rigorously define what is a Lisp because I know that
categories in natural language are fuzzy.

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Erann Gat  
View profile  
 More options Mar 15 2002, 3:08 am
Newsgroups: comp.lang.lisp
From: g...@jpl.nasa.gov (Erann Gat)
Date: Thu, 14 Mar 2002 23:50:38 -0800
Local: Fri, Mar 15 2002 2:50 am
Subject: Re: Why is Scheme not a Lisp?

In article <3225161536947...@naggum.net>, Erik Naggum <e...@naggum.net> wrote:
>   ... the lack of first-class symbols ...

Scheme has first-class symbols.  See R5RS section 6.3.3

E.


 
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.
Discussion subject changed to "What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)" by Rahul Jain
Rahul Jain  
View profile  
 More options Mar 15 2002, 3:20 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 02:16:25 -0600
Local: Fri, Mar 15 2002 3:16 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)

Christopher Browne <cbbro...@acm.org> writes:
> Kinda stupid to have the goal of dissociation and then start the
> standard by describing how it's an instance of a Lisp...

Right, that's what confuses me. But it is clear from the actual
description and community of scheme that they definitely didn't want
to be a subset of the Lisp community.

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Discussion subject changed to "Why is Scheme not a Lisp?" by Rahul Jain
Rahul Jain  
View profile  
 More options Mar 15 2002, 3:20 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 02:19:41 -0600
Local: Fri, Mar 15 2002 3:19 am
Subject: Re: Why is Scheme not a Lisp?
tb+use...@becket.net (Thomas Bushnell, BSG) writes:

> Rahul Jain <rj...@sid-1129.sid.rice.edu> writes:
> Um, is there really a problem here?  Proper tail recursion is defined
> in terms of the space complexity of the computation.  You have to give
> a careful definition of which syntactic contexts count as a "tail
> call".  

You can search google groups for past discussions about what can and
cannot be considered a tail call. There was no conclusion.

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Discussion subject changed to "What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)" by Rahul Jain
Rahul Jain  
View profile  
 More options Mar 15 2002, 3:30 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 02:26:40 -0600
Local: Fri, Mar 15 2002 3:26 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)

Bruce Hoult <br...@hoult.org> writes:
> In article <87vgbyz9jo....@photino.sid.rice.edu>,
>  Rahul Jain <rj...@sid-1129.sid.rice.edu> wrote:
> > Bijan Parsia <bpar...@email.unc.edu> writes:
> > > Is ML a Lisp?
> > I think that if scheme is a lisp, then it would be a very strange
> > concept to call ML not a lisp. ML and Scheme are on oppposite ends of
> > one spectrum (static typing) that Common Lisp is in the middle
> > of. However, in most other regards, ML can pretty much be considered
> > to be closer to scheme than it is to common lisp.
> Scheme and ML fail my "Can you easily transliterate textbook programs
> from one language into the other language?" test.

So the syntax is what matters? Java is a C, then? And what textbook
are you talking about? I can't believe that there are textbooks which
don't use call/cc and there should be textbooks which use CL's
condition system, and there are surely ones that use throw/catch. I
don't consider throw/catch to call/cc to be an "easy" transformation.

> Scheme examples make frequent use of runtime polymorphism.

Right, that's the static typing axis.

> ML examples make frequent use of implicit currying.

That's syntactic sugar, really.

> > > I'm a bit unclear about the "notation for functions in terms of
> > > conses" requirement, also.
> > I think he basically means that code is expressed as cons-trees.
> I don't see why that is important for languages that don't have "eval"
> or procedural macros, such as ML, Dylan, and (believe it or not) Scheme
> until recently.

Yes, exactly. :)

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Rahul Jain  
View profile  
 More options Mar 15 2002, 3:30 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 02:29:14 -0600
Local: Fri, Mar 15 2002 3:29 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)

Erik Naggum <e...@naggum.net> writes:
> * Christopher Browne
> | Kinda stupid to have the goal of dissociation and then start the standard
> | by describing how it's an instance of a Lisp...

>   Only if you have only one-bit answers.

Hmm, yes. But it would have made more sense for them to make clear
that they were on a trajectory away from Lisp.

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Discussion subject changed to "Why is Scheme not a Lisp?" by Thomas Bushnell, BSG
Thomas Bushnell, BSG  
View profile  
 More options Mar 15 2002, 3:40 am
Newsgroups: comp.lang.lisp
From: tb+use...@becket.net (Thomas Bushnell, BSG)
Date: 15 Mar 2002 00:35:47 -0800
Local: Fri, Mar 15 2002 3:35 am
Subject: Re: Why is Scheme not a Lisp?

Rahul Jain <rj...@sid-1129.sid.rice.edu> writes:
> You can search google groups for past discussions about what can and
> cannot be considered a tail call. There was no conclusion.

Oh, indeed; like I said, you must carefully determine what counts as a
tail call.  That is indeed fraught with difficulties.  

But you asked about what could be considered "proper", instead of what
could be considered a "tail call".  The proper part is easy and
unambiguous.  The tail call part is not.

There are certain things you might think are tail contexts in Scheme
where the R5RS does not require proper tail recursion, for example.

Adding proper tail recursion to Common Lisp would require such careful
work too.

Thomas


 
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.
Discussion subject changed to "What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)" by Thomas Bushnell, BSG
Thomas Bushnell, BSG  
View profile  
 More options Mar 15 2002, 3:40 am
Newsgroups: comp.lang.lisp
From: tb+use...@becket.net (Thomas Bushnell, BSG)
Date: 15 Mar 2002 00:38:11 -0800
Local: Fri, Mar 15 2002 3:38 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)

Rahul Jain <rj...@sid-1129.sid.rice.edu> writes:
> Right, that's what confuses me. But it is clear from the actual
> description and community of scheme that they definitely didn't want
> to be a subset of the Lisp community.

Really?  When the description says "Scheme .. is a dialect of the Lisp
programming language", you think that makes it clear they don't want
to be a subset of the Lisp community?  Every Scheme description I have
ever seen says something like that, and you conclude that they
*definitely* don't want to be part of the Lisp community?

Indeed, even the Common Lisp language texts list Scheme as a dialect
of Lisp.  

What is it that is making your conclusion so clear to you?

Thomas


 
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 Mar 15 2002, 3:59 am
Newsgroups: comp.lang.lisp
From: Bruce Hoult <br...@hoult.org>
Date: Fri, 15 Mar 2002 21:59:17 +1300
Local: Fri, Mar 15 2002 3:59 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)
In article <87u1rixmm7....@photino.sid.rice.edu>,
 Rahul Jain <rj...@sid-1129.sid.rice.edu> wrote:

No, syntax does not matter.  For example, Common Lisp and Dylan can
usually be easily transliterated into each other, but the syntax is
quite different.

> And what textbook are you talking about? I can't believe that there
> are textbooks which don't use call/cc

As someone just pointed out, SICP doesn't mention call/cc.  I hadn't
realised that, but SICP is pretty much the clasic
textbook-that-uses-scheme.

> and there should be textbooks which use CL's
> condition system, and there are surely ones that use throw/catch. I
> don't consider throw/catch to call/cc to be an "easy" transformation.

I wouldn't either.  CL and Scheme aren't very close in this area.  On
the other hand, CL and Dylan have very similar condition systems --
Dylan unifies conditions and restarts but that's more a theoretical
tidiness thing than a practical problem.

> > Scheme examples make frequent use of runtime polymorphism.

> Right, that's the static typing axis.

> > ML examples make frequent use of implicit currying.

> That's syntactic sugar, really.

True, and you can emulate it in Scheme using lambdas and/or an explicit
"curry", but it's used heavily enough in ML to cause a lot of code
expansion when translated to Scheme.

Perhaps a better example (which I mentioned yesterday but forgot today)
is the heavy use of pattern matching in ML.

> > > > I'm a bit unclear about the "notation for functions in terms of
> > > > conses" requirement, also.

> > > I think he basically means that code is expressed as cons-trees.

> > I don't see why that is important for languages that don't have "eval"
> > or procedural macros, such as ML, Dylan, and (believe it or not) Scheme
> > until recently.

> Yes, exactly. :)

Well, if you think that "eval" is essential then list *it*, not the
incidental "notation for functions in terms of conses".

-- 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.
Ian Wild  
View profile  
 More options Mar 15 2002, 4:25 am
Newsgroups: comp.lang.lisp
From: Ian Wild <i...@cfmu.eurocontrol.be>
Date: Fri, 15 Mar 2002 09:25:55 GMT
Local: Fri, Mar 15 2002 4:25 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)

Err....I feed my program to the compiler and it generates
the bytes that get burned into ROMs that make the doorbell
play the opening sequence of "All You Need is Love".  I
can write my program in a choice of languages, assembler,
C, and PL/M spring to mind, but you're suggesting I can
/never/ use Lisp unless I also fit a screen and keyboard
to the doorbell.  (Plus, I'd guess, a disc drive to
give "load" somewhere to look.)

 
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.
Rahul Jain  
View profile  
 More options Mar 15 2002, 4:50 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 03:44:52 -0600
Local: Fri, Mar 15 2002 4:44 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)
tb+use...@becket.net (Thomas Bushnell, BSG) writes:

> Really?  When the description says "Scheme .. is a dialect of the Lisp
> programming language", you think that makes it clear they don't want
> to be a subset of the Lisp community?

Wow.

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Rahul Jain  
View profile  
 More options Mar 15 2002, 5:00 am
Newsgroups: comp.lang.lisp
From: Rahul Jain <rj...@sid-1129.sid.rice.edu>
Date: 15 Mar 2002 03:52:32 -0600
Local: Fri, Mar 15 2002 4:52 am
Subject: Re: What should S-expression based languages be called? (was: Re: Why is Scheme not a Lisp?)

Bruce Hoult <br...@hoult.org> writes:
> In article <87u1rixmm7....@photino.sid.rice.edu>,
>  Rahul Jain <rj...@sid-1129.sid.rice.edu> wrote:
> > Bruce Hoult <br...@hoult.org> writes:
> > > In article <87vgbyz9jo....@photino.sid.rice.edu>,
> > >  Rahul Jain <rj...@sid-1129.sid.rice.edu> wrote:
> > > > I think that if scheme is a lisp, then it would be a very strange
> > > > concept to call ML not a lisp.
> > > Scheme and ML fail my "Can you easily transliterate textbook programs
> > > from one language into the other language?" test.
> > So the syntax is what matters? Java is a C, then?
> No, syntax does not matter.  For example, Common Lisp and Dylan can
> usually be easily transliterated into each other, but the syntax is
> quite different.

It all depends on what's "usual".

> > And what textbook are you talking about? I can't believe that there
> > are textbooks which don't use call/cc
> As someone just pointed out, SICP doesn't mention call/cc.  I hadn't
> realised that, but SICP is pretty much the clasic
> textbook-that-uses-scheme.

So we should use a book that uses a language to teach general concepts
as the standard textbook for that language? I don't get the point of
this "textbook program" idea.

> > > ML examples make frequent use of implicit currying.
> > That's syntactic sugar, really.
> True, and you can emulate it in Scheme using lambdas and/or an explicit
> "curry", but it's used heavily enough in ML to cause a lot of code
> expansion when translated to Scheme.

Same with porting code that uses CLOS or conditions to Scheme. Or code
that uses call/cc to Lisp.

> Perhaps a better example (which I mentioned yesterday but forgot today)
> is the heavy use of pattern matching in ML.

That can be done without too much trouble with COND. As much trouble
as any other differences between the languages.

> > > > > I'm a bit unclear about the "notation for functions in terms of
> > > > > conses" requirement, also.
> > > > [...]
> > > I don't see why that is important for languages that don't have "eval"
> > > or procedural macros, such as ML, Dylan, and (believe it or not) Scheme
> > > until recently.
> > Yes, exactly. :)
> Well, if you think that "eval" is essential then list *it*, not the
> incidental "notation for functions in terms of conses".

Perl has eval, too.

--
-> -/                        - Rahul Jain -                        \- <-
-> -\  http://linux.rice.edu/~rahul -=-  mailto:rj...@techie.com   /- <-
-> -/ "Structure is nothing if it is all you got. Skeletons spook  \- <-
-> -\  people if [they] try to walk around on their own. I really  /- <-
-> -/  wonder why XML does not." -- Erik Naggum, comp.lang.lisp    \- <-
|--|--------|--------------|----|-------------|------|---------|-----|-|
   (c)1996-2002, All rights reserved. Disclaimer available upon request.


 
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.
Discussion subject changed to "Discussions, was Re: Why is Scheme not a Lisp?" by Stefan Schmiedl
Stefan Schmiedl  
View profile  
 More options Mar 15 2002, 7:08 am
Newsgroups: comp.lang.lisp
From: s...@xss.de (Stefan Schmiedl)
Date: 15 Mar 2002 12:08:12 GMT
Local: Fri, Mar 15 2002 7:08 am
Subject: Discussions, was Re: Why is Scheme not a Lisp?
On Fri, 15 Mar 2002 06:40:31 GMT,

Erik Naggum <e...@naggum.net> wrote:
>   Such idiotic wars is not what technical newsgroups are for.

All of you would do the public image of comp.lang.lisp a great
favour, if you would carry out those pointless arguments (not even
discussions) consisting of accusations and counter-accusations with
often unnecessarily harsh language in private.

Thank you for your consideration.

S.


 
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 176 - 200 of 572 < Older  Newer >
« Back to Discussions « Newer topic     Older topic »