Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Time for a Fresh Scheme Standard: Say Goodbye to the RnRS Relic

25 views
Skip to first unread message

New Scheme

unread,
Dec 21, 2001, 7:14:04 PM12/21/01
to
***************************************************************
Time for a Fresh Scheme Standard
And to Say Goodbye to the RnRS Relic
----------------------------------------------------

Is it time for a new scheme standard? Is it time to make a break from
the ossified RnRS document? Is it time to bring Scheme into the 21st
century?

Scheme has become very dated. The RnRS series of documents are a
relic of a more dynamic past but are now little more than a fossil
record of its ever slowing development. With each year that passes,
scheme becomes more irrelevant to the practical and academic software
development, education and research worlds.

So what should be done? Fix the uncertainties, clear up the undefined
areas. Don't be scared to admit weaknesses and mistakes in the
current standard. Solicit help from the Common Lisp community and
draw upon their extensive practical experience. Learn from the
Functional community and their many strong ideas. And ask the
compiler vendors about practicalities.

Its time for a fresh look at scheme. Its time to break away from the
RnRS and its brotherhood of old men in their isolated,
self-referential world. Its time to reinvigorate the language.

Its time for a new standard.

David Rush

unread,
Dec 21, 2001, 9:31:26 PM12/21/01
to news...@hotmail.com
<posted-and-mailed why="cross-postings to cll and clf">
<flame mode="on">
news...@hotmail.com (New Scheme) writes:

So who the fuck are you anyway? I mean really, behind the
freshly-minted hotmail alias. You sound like Tom Lord, but that's just
my opinion.

> ***************************************************************
> Time for a Fresh Scheme Standard
> And to Say Goodbye to the RnRS Relic

This is such bullshit that I think I'm being trolled. Congratulations
whoever, you have succeeded - but I don't agree with either your tone
or your explicit opinions. R5RS is an excellent document, in spite of
its need for revision. I have only two issues that I think *must* be
fixed, and only one of them is truly controversial.

No I'm not going to list them - If you don't know you can google for
the info, but I suspect that you already do know. And I suspect that
you have a particular wish-list...care to come out of the closet?

> Is it time for a new scheme standard?

No. It is time to open discussions.

> Is it time to make a break from the ossified RnRS document?

No. It has been one of the most successful language standards
documents in history, at least by my criteria.

> Is it time to bring Scheme into the 21st century?

No. The 21st century still has a lot of catching up to do.

> Scheme has become very dated. The RnRS series of documents are a
> relic of a more dynamic past but are now little more than a fossil
> record of its ever slowing development.

This is such bullshit, it has to be a troll. You're secretly Erik
Naggum aren't you? The RnRS series is converging on an idealized
language; the changes are *bound* to become smaller over time.

> With each year that passes,
> scheme becomes more irrelevant to the practical and academic software
> development, education and research worlds.

Well I can't speak to academia, but I've got 7KLOC (and headed for the
20s) of very intelligent *commercially-developed* software which is
very relevant to our business. I did it in Scheme because I don't have
to fuck around with a lot of stupid mis-features from 'advanced'
languages like Perl, Python, Tcl, Ruby, or (God help us) C++ and Java;
all languages which will very quickly become dead-weight in legacy
systems ensuring long-term pay stability for the current generation of
no-talent simps graduating into the CS business.

Scheme Lives!

> Solicit help from the Common Lisp community and
> draw upon their extensive practical experience.

There are no good ideas over there. They've completely missed the
boat. They're a bunch of losers who have bought and sold the
lambda-nature for a profit. I mean really, who could take a language
with that 'for' construct seriously. The 'do' is Scheme is bad
enough. And CLOS, let's not waste time with that over-designed Sherman
Tank. It's not even close to the bleeding edge of object-think.

> Learn from the
> Functional community and their many strong ideas.

There is a *huge* cross-over from Scheme to the functional
community. Scheme occupies a significant patch of the intellectual
turf: untyped, eager-evaluation lambda-calculus.

> And ask the compiler vendors about practicalities.

There are 2: Chez (who seem to be taking the same tack that killed
Smalltalk and charging $4000/seat), and Erian Concept (who I keep
trying - and failing - to convince myself to try their free beer
version). Scheme, in addition to advancing the pursuit of the
lambda-nature is also essentially free: more free than any other
language. Clearly freedom is too difficult for the mainstream software
community to deal with, but so what? If I lived in New Hampshire I
would put a motion to the State legislature to make Scheme the
official computer language of the State (the State motto is 'Live Free
or Die'), there are more high (and low) quality 'free speech' Schemes
than exist for any other language. What does *that* tell you?

> Its time for a fresh look at scheme. Its time to break away from the
> RnRS and its brotherhood of old men in their isolated,
> self-referential world. Its time to reinvigorate the language.

Those are fucking *smart* old men. I just want to get them engaged
again. I realize that the political infighting that got us a language
as good as R5RS is a PITA - I have to deal with similar bullshit as a
software architect at my day job. And it's a thankless job because at
the end of the day, people are only going to pick the thing apart, but
still somebody's got to do it.

I'm not going to pretend that I can keep up with Shriram, Matthias F,
Will, and Jonathan, or even Olin (no offense intended to Olin, I just
am not aware of his contributions to R5RS), Matthias B, Oleg, and A*
Petrofsky. I do care a lot about Scheme, though, and I wish that we
could get some movement. I fear that Scheme might well suffer the fate
of C and get replaced with something almost infinitely worse if these
people are not involved.

> Its time for a new standard.

Only if we can get quality people to work on it. So who the fuck are
you, Mr. Hotmail.com?
</flame>

david rush
(who has just watched _the matrix_ for the first time and is feeling
pretty radicalized just at the moment)
--
C makes it easy to shoot yourself in the foot, C++ makes it harder,
but when you do, it blows away your whole leg -- Bjarne Stroustrup

s/C/Usenet/ if I've offended anyone but the original poster...
</posted-and-mailed>

Anton van Straaten

unread,
Dec 21, 2001, 10:41:01 PM12/21/01
to
A new standard won't be constructed by anonymous people, that's for sure.

Further proof that a sufficiently ignorant post is indistinguishable from a
troll.

Anton

Anton van Straaten

unread,
Dec 21, 2001, 11:02:08 PM12/21/01
to
>david rush
>(who has just watched _the matrix_ for the first time and is feeling
>pretty radicalized just at the moment)

I'm sure those who've served on language standardization committees must
have often wished for a trenchcoat full of automatic weaponry...

Anton
Scheme: Because it *is* the red pill...

New Scheme

unread,
Dec 22, 2001, 4:02:35 AM12/22/01
to
David Rush <ku...@bellsouth.net> wrote in message news:<okfg064...@bellsouth.net>...

> So who the fuck are you anyway?

[...]
> This is such bullshit...
[...]


> This is such bullshit, it has to be a troll. You're secretly Erik
> Naggum aren't you?

[...]


> I did it in Scheme because I don't have to fuck around with
> a lot of stupid mis-features from 'advanced' languages like
> Perl, Python, Tcl, Ruby, or (God help us) C++ and Java

[...]


> the current generation of no-talent simps graduating into
> the CS business.

> > Solicit help from the Common Lisp community
[...]


> They're a bunch of losers who have bought and sold the
> lambda-nature for a profit.

[...]


> So who the fuck are you, Mr. Hotmail.com?

Your extreme pathologic response clearly demonstrates the problem with
the small, fundamentalist group of scheme "defenders of the faith"
that are being left further and further behind as the world moves
forward.

Anyone calling for injection of fresh ideas into the language is
attacked with a level of spite and religious vehemence rarely seen
outside of fundamentalist religious sects.

Rather than address the issues raised in the positing, you spent
considerable effort attacking me and others in your reply. You
attacked other languages such as Lisp, C++ and Perl.. You attacked
the other programming communities as if they were the devils own. I
can just imagine you frothing at the mouth, up on the pulpit declaring
that the evil sinners who do not follow the one true way of scheme
will rot in hell for all eternity.

Resisting the inevitable, sticking your head in the sand and yelling
obscenities at anyone and everyone who has the audacity to suggest
change is like pissing into an oncoming typhoon… you just end up with
wet pants, looking like a sad old man who has lost all bowel control.

Its time to reinvigorate scheme. See you in hell.

...


> david rush
> (who has just watched _the matrix_ for the first time and is feeling
> pretty radicalized just at the moment)

Congratulations on seeing the matrix; its only been out for, like,
three years. That explains alot.


-----------------------------------------------------------
David Rush <ku...@bellsouth.net> wrote in message news:<okfg064...@bellsouth.net>...

IsraelRT

unread,
Dec 22, 2001, 5:47:29 AM12/22/01
to
On 22 Dec 2001 01:02:35 -0800, news...@hotmail.com (New Scheme)
wrote:

>Anyone calling for injection of fresh ideas into the language is
>attacked with a level of spite and religious vehemence rarely seen
>outside of fundamentalist religious sects.

Anyone ?
Or an anonymous troll who is too scared to use his real name ?

> See you in hell.

I am sure that a nice warm spot is being kept for you, Mr Troll.

Erik Naggum

unread,
Dec 22, 2001, 7:13:15 AM12/22/01
to
* David Rush

| You're secretly Erik Naggum aren't you?

Merry Christmas, David Rush. My best wishes for your mental health.

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

Erik Naggum

unread,
Dec 22, 2001, 7:45:25 AM12/22/01
to
* news...@hotmail.com (New Scheme)

| Its time to reinvigorate scheme.

No, it is not. It is time to leave Scheme behind. It used to be a
language that brought many new ideas into _one_ language, but all of the
good ideas have been picked up by other, better languages. Common Lisp,
Perl, Python, Ruby, and Java have all benefited from the little group of
impractical purists who designed this minimalistic language experiment.
Look, Tengwar is more widely used than Scheme these days. The features
unique to Scheme today are those that are universally considered bad
ideas. Worse: Perl, Python, Ruby, and Java have more of the Lisp nature
than Scheme does, whether they admit to it or not, and better developed
and more widely used to boot. It is time to close the book on Scheme and
let it wither and die, which it will if you leave the kind of people you
have seen respond to you alone to destroy it from within.

If you still want a functional programming paradigm, there are lots and
lots of more recent academic experiments that should be at least as
useless as Scheme for real work, but which could be a little harder to
teach, since they actually try to do _something_ and are not just trying
to make a language optimized for reimplementation of itself by students.

If you are not welcome in the Scheme community, take a hint: Leave. They
do not even need to be provoked to attack individual people, as you have
seen, so they are clearly bad people. Do not try to change bad people:
It makes the bad people worse and wastes your time (that is the lesson I
learned from trying to deal with Scheme freaks as if they were people).
Try instead to find good people who welcome the ability to think.

Ask yourself what you actually _like_ in Scheme. Chances are you can get
it, better implemented and better understood, in any number of other
languages. The only thing you probably cannot get in other languages is
a full implementation of the language itself done as a student project.
If you want that, just create your own language like everybody else who
has ever actually tried to used Scheme does, anyway.

Hirotaka Yamamoto

unread,
Dec 22, 2001, 7:59:55 AM12/22/01
to
Erik Naggum <er...@naggum.net> writes:

> Look, Tengwar is more widely used than Scheme these days. The features
> unique to Scheme today are those that are universally considered bad
> ideas.

Prove it by examples, please.

Yamamoto

.Sigmonster

unread,
Dec 22, 2001, 7:53:06 AM12/22/01
to
"Anton van Straaten" <an...@appsolutions.com> writes:
> Anton
> Scheme: Because it *is* the red pill...

SLURP! Yummmmmm...

david rush's .Sigmonster
--
In my experience, what every artist wants, really *wants*, is
to be paid.
-- Glod Glodsson, in _Soul Music_

IsraelRT

unread,
Dec 22, 2001, 8:00:04 AM12/22/01
to
On Sat, 22 Dec 2001 12:45:25 GMT, Erik Naggum <er...@naggum.net> wrote:
> Look, Tengwar is more widely used than Scheme these days.

And an infamous Common Lisp user gives popularity as a reason to
choose a language ?

Wonders will never cease....

David Rush

unread,
Dec 22, 2001, 7:51:41 AM12/22/01
to er...@naggum.net
<mailed-and-posted>

Erik Naggum <er...@naggum.net> writes:
> * David Rush
> | You're secretly Erik Naggum aren't you?
>
> Merry Christmas, David Rush. My best wishes for your mental health.

Either you're trolling through nnkiboze, or it really is you, isn't it?

As if I actually cared.

david rush
</mailed-and-posted>
--
In a tight spot, you trust your ship or your rifle to get you through,
so you refer to her affectionately and with respect. Your computer? It
would just as soon reboot YOU if it could. Nasty, unreliable,
ungrateful wretches, they are. -- Mike Jackmin (on sci.crypt)

Erik Naggum

unread,
Dec 22, 2001, 8:58:58 AM12/22/01
to
* Erik Naggum

> Look, Tengwar is more widely used than Scheme these days.

* Hirotaka Yamamoto


| Prove it by examples, please.

I am glad you asked. The Lord of the Rings: The Fellowship of the Ring,
has premiered recently all over the world. Tengwar is a writing system
devised by J.R.R.Tolkien in this monumental work. Millions of people all
over the world have taken a renewed interest in his works, including his
new languages and writing systems, because of this movie. I venture a
guess that more people were fluent in Tengwar than in Scheme before this
movie was announced, as well, but I am certain that the number has
exceeded Scheme fluency because of the movie. I certainly reread LotR
and took up my old calligraphic Tengwar skills in joyful anticipation of
the movie, and I did not reread RnRS nor take up my old Scheme skills in
anticipation of, um, anything. Q.E.D.

Note: Despite the fictitious "please", I consider the brevity, style, and
substance of your request to communicate hostility. Requests for proof
or references are never constructive on USENET, just mere tactics in a
rhetorical game. I have responded with ridicule. Please be pleased with
the results. Thank you and goodbye.

New Scheme

unread,
Dec 22, 2001, 9:07:37 AM12/22/01
to
IsraelRT <isra...@optushome.com.au> wrote in message news:<r2p82ukg5pcjfkhfu...@4ax.com>...

> On 22 Dec 2001 01:02:35 -0800, news...@hotmail.com (New Scheme)
> wrote:
>
> >Anyone calling for injection of fresh ideas into the language is
> >attacked with a level of spite and religious vehemence rarely seen
> >outside of fundamentalist religious sects.
>
> Anyone ?
> Or an anonymous troll who is too scared to use his real name ?

You obviously didn't read David Rush's rant. Are you suffering from a
bit of selective amnesia?

Erik Naggum

unread,
Dec 22, 2001, 9:07:35 AM12/22/01
to
* Erik Naggum

> Look, Tengwar is more widely used than Scheme these days.

* IsraelRT <isra...@optushome.com.au>


| And an infamous Common Lisp user gives popularity as a reason to
| choose a language?

No. That would be a rather spectacularly invalid conclusion. Since you
obviously have no idea what Tengwar is, suffice to say that a relatively
small group of people have adopted this artificial writing system from
J.R.R.Tolkien in order to enjoy communication within the secluded world
of ardent fans. Some therefore consider it a symptom of a cult. It was
the likeness of ardent fans in small number who keep the rest of the
world out through a measure of intended obscurity that prompted the
comparison, not the mere quantity of weirdos. Please confirm that you
have been enlightened by responding with another hostile grunt.

| Wonders will never cease....

That easily happens when you abandon rationality. Enjoy your wonders.

IsraelRT

unread,
Dec 22, 2001, 9:09:50 AM12/22/01
to
On 22 Dec 2001 06:07:37 -0800, news...@hotmail.com (New Scheme)
wrote:

>> Or an anonymous troll who is too scared to use his real name ?


>
>You obviously didn't read David Rush's rant. Are you suffering from a
>bit of selective amnesia?

Still posting anonymously ?

Coward.

IsraelRT

unread,
Dec 22, 2001, 9:12:05 AM12/22/01
to
On Sat, 22 Dec 2001 14:07:35 GMT, Erik Naggum <er...@naggum.net> wrote:

>* IsraelRT <isra...@optushome.com.au>
>| And an infamous Common Lisp user gives popularity as a reason to
>| choose a language?
>
> No. That would be a rather spectacularly invalid conclusion. Since you
> obviously have no idea what Tengwar is

You are either delusional or sadly lacking in rationality if you
believe that the second statement follows as a consequence of the
first.

Go take your medication.

Andrzej Lewandowski

unread,
Dec 22, 2001, 9:23:05 AM12/22/01
to
On 21 Dec 2001 16:14:04 -0800, news...@hotmail.com (New Scheme)
wrote:

>***************************************************************


> Time for a Fresh Scheme Standard
> And to Say Goodbye to the RnRS Relic
> ----------------------------------------------------
>
>Is it time for a new scheme standard? Is it time to make a break from
>the ossified RnRS document? Is it time to bring Scheme into the 21st
>century?
>

[...]


>
>Its time for a new standard.

Feel free to design Your Own Language.

A.L.

Erik Naggum

unread,
Dec 22, 2001, 10:56:07 AM12/22/01
to
* David Rush
| You're secretly Erik Naggum aren't you?

* Erik Naggum


> Merry Christmas, David Rush. My best wishes for your mental health.

* David Rush


| Either you're trolling through nnkiboze, or it really is you, isn't it?

Your insanity is your personal problem, not mine. Whatever you conjure
up in your psychotic state of mind is your personal problem, not mine.
Just because a lunatic like yourself is so vindictive and stark raving
mad that you think it is me, does not make it so. Quite the contrary,
usually.

But, in the interest of aiding the recovery of your mental health: no, it
is not me -- I would never try to make Scheme better in any possible way,
real or imagined, feigned or actually. Scheme concerns me only when some
of the raving lunatics in the Scheme community wander into newsgroups I
read and propagandize for his useless non-Lisp. Such propagandizing is
not tolerated anywhere -- they are well known to cause flame wars when
some blundering bigot from one language camp comes wandering into a forum
for another. I just happen to take care of the Scheme lunatics. I have
no interest in provoking the insanity of people like yourself. Adjust
your vindictiveness and your personality disorders accordingly, please.

This time, however, you called on me, David Rush, which I consider to be
an _amazingly_ moronic move on your part. What could you possibly gain
from such a stunningly unintelligent act? You must have known that your
insanity would be exposed as soon as this was revealed to newsgroups I
read, but I guess that is why you only posted it to comp.lang.scheme,
since you are such a disgustingly spineless coward that you cannot even
be man enough to insult me to my face. And yet you are so mindbogglingly
spiteful that you do not even _recognize_ that your own acts of hostility
has brought this upon you. Such hatred is irrational; it is the subject
of terrorist brainwashing and bombed-out caves. Let me offer a repartee:
You are secretly a Taliban soldier and Al Qaeda member, are you not?

By the way, all my posts can _easily_ be traced back to me. I personally
own all domain names I use to post. Why would I want to hide unless I
wanted to be exceptionally _constructive_ and would want to avoid your
ilk and the way you retarded Scheme bigots lack the brainpower to read
anything if I have written it; indeed, even if I have not, this psychotic
reflex of yours rears its ugly head. So trust me on this: I would not
want to be constructive in this fashion towards anything remotely related
to Scheme, the only language that exceeds Perl in vileness, the only
community of people less inspiring than the Taliban. (Were I to create a
Perl module of some kind, however, I would probably assume an entirely
new identity through several layers of obfuscation, to avoid being teased
by my friends for years to come. This is very unlikely to happen. It
will _not_ happen for Scheme.)

I have no idea who this New Scheme fellow is, but I would hazard a guess
that he is somewhat miffed at the turn his _probably_ constructive move
took as soon as your insanity got up and shot down every hope of getting
anyone to work with him. Now the Scheme community will just look like a
bunch of babbling David Rushes to him, and if I can convince him that it
is not worth the effort to teach you bigots anything useful, he will find
another language to use. For all we know, he made the same kind of "I
need to hide behind this mysterious account because Scheme freaks are
known to burn down the homes of those who dare suggest that Scheme needs
improving" assumptions that I would have made if I were ever to suggest
anything useful to you psychotic lunatics. Again, rest assured that I
will not ever even _attempt_ this. I would not want to share _anything_
with people like you. The fact that you nutballs _blame_ me for just
about anything is in fact a pretty solid guarantee that I will never want
to help a Scheme victim unless he wants to convert to something less evil
and abandon Scheme for good. I think I shall make a point out of asking
people I would normally help if they are prepared to abandon Scheme.
Unlike religion, the choice of Scheme as your programming language and
community is voluntary, like murdering someone, leaving a victim of your
reckless drunken driving, selling drugs to school children, etc, and
certain choices in life are simply unforgivable.

Blaming someone for something they have not done, and doing so behind
their back, is the kind of transgression that I would not forgive anyone,
either, but what else can we expect from psychotic Scheme bigots? You
guys just go out of your way to prove the color of your moral fabric.

| As if I actually cared.

You are so cute when you try to pretend you are not lying.

Again, Merry Christmas, David Rush. Best wishes for your mental health.

Consider putting this to rest by not replying, David. It was your call
to provoke me with your rabid false accusation. It is your call to end
it, too. Be the man you were not when you posted to comp.lang.scheme,
only, and just quit this. Accept that you are completely nuts and are so
out of your mind that you need to personify your mental problems. No
apology for your unforgivable behavior is necessary. Shut the fuck up
and do not repeat your psychotic episode, and I will be happy with you.

Erik Naggum

unread,
Dec 22, 2001, 12:18:50 PM12/22/01
to
* IsraelRT <isra...@optushome.com.au>
| And an infamous Common Lisp user gives popularity as a reason to
| choose a language?

* Erik Naggum


> No. That would be a rather spectacularly invalid conclusion. Since you
> obviously have no idea what Tengwar is

* IsraelRT <isra...@optushome.com.au>


| You are either delusional or sadly lacking in rationality if you believe
| that the second statement follows as a consequence of the first.

As a _consequence_? No. Logic and rational thought is not quite your
thing, is it? But since your emotive invective is conditional upon your
false premise, I guess I am in the clear. Whew! That was _so_ close.

| Go take your medication.

I assume you have extensive experience with medication helping your own
behavioral problems since you think this silliness is an insult, but it
just goes to show that once again, the aggressiveness of Israel gets
blamed on those attacked. History is indeed repeating itself.

Courageous

unread,
Dec 22, 2001, 12:27:40 PM12/22/01
to

> Note: Despite the fictitious "please", I consider the brevity, style, and
> substance of your request to communicate hostility. Requests for proof
> or references are never constructive on USENET, just mere tactics in a
> rhetorical game. I have responded with ridicule. Please be pleased with
> the results. Thank you and goodbye.

Ouch. That was very damning. You gave him a bloody nose and all that.

Could you stop cross posting, though? We like to concern ourselves with
_relevant_ languages over here. LOL.

C//

Hirotaka Yamamoto

unread,
Dec 22, 2001, 12:42:46 PM12/22/01
to
I don't realize why you are so mad, but I do have realized that
you intentionally changed my posting and neglect what I guess
is inconvenient to you. I wrote,

------------ cut here ----------


> Look, Tengwar is more widely used than Scheme these days. The features
> unique to Scheme today are those that are universally considered bad
> ideas.

Prove it by examples, please.
------------ cut here ----------

but you wrote,

------------ cut here ----------


> * Erik Naggum
> > Look, Tengwar is more widely used than Scheme these days.
>
> * Hirotaka Yamamoto
> | Prove it by examples, please.

------------ cut here ----------

Why could you claim that "the features unique to Scheme today
are those that are universally considered bad ideas." without
any proof?? Especially, why could you use the word "universally"??

Ah... maybe because you are the only person who lives in
"your universe"?

Yamamoto

MJ Ray

unread,
Dec 22, 2001, 8:16:59 PM12/22/01
to
New Scheme <news...@hotmail.com> wrote:
>> So who the fuck are you, Mr. Hotmail.com?
>Your extreme pathologic response clearly demonstrates the problem with
>the small, fundamentalist group of scheme "defenders of the faith"
>that are being left further and further behind as the world moves
>forward.

Nice failure to answer the question, Mr Hotmail. In case you haven't
noticed while you've been constructing yet another alias, work to update
Scheme in many aspects continues apace.

As my experience should show, the Scheme community is very welcoming to
newcomers and it is possible to use Scheme for modern applications. If you
don't want to help it, that's your problem. It is small, clean and, yes,
relevant to today's work.

You are just a common troll and I'm sorry I replied, but some things
couldn't be left unsaid. Goodbye.

Follow-ups set.

MJ Ray

unread,
Dec 22, 2001, 8:20:37 PM12/22/01
to
Erik Naggum <er...@naggum.net> wrote:
> No, it is not. It is time to leave Scheme behind. [...]

Oh joy. I thought I saw the last Naggum post when I unsubbed from
comp.lang.lisp. Are you still sore that Scheme is installed on far more
computers than oxymoronically-named "Common" Lisp?

> If you are not welcome in the Scheme community, take a hint: Leave. [...]

The Scheme community is a warm and welcoming place compared to the Common
Lisp one, I think. The the open, academic-yet-practical, friendly spirit of
Lisp lives on in comp.lang.scheme and numerous general lisp mailing lists.
We just don't like anonymous posters saying that we got it all wrong.

MJ Ray

unread,
Dec 22, 2001, 8:27:51 PM12/22/01
to
Erik Naggum <er...@naggum.net> wrote:
> You are secretly a Taliban soldier and Al Qaeda member, are you not?

Yeah, and you're a Nazi, Naggum.

\|/ ____ \|/
"@' / ,. \ "@'
/__| \__/ |__\
\__U_/

israel r t

unread,
Dec 22, 2001, 11:38:01 PM12/22/01
to
On Sat, 22 Dec 2001 17:18:50 GMT, Erik Naggum <er...@naggum.net> wrote:

.
.

{ much spectacularly irrelevant , incoherent and grammatically
challenged psychotic ravings by Eroc Nogumshoe deleted }

> blamed on those attacked. History is indeed repeating itself.

No, the No Gum is repeating himself.

Ji-Yong D. Chung

unread,
Dec 23, 2001, 2:12:40 AM12/23/01
to
Hi

"New Scheme" <news...@hotmail.com> wrote in message
news:c571739c.01122...@posting.google.com...
?


> Learn from the Functional community and their many strong ideas.

> And ask the compiler vendors about practicalities.

That will not work, because the smartest
Scheme folks generally know as much as other
Functional community folks and know much more
about practicalities than compiler vendors.

> Its time to Solicit help from the Common Lisp community and


> draw upon their extensive practical experience.

Heck, why not choose a language community
with even more practical.experience. Visual
Basic?

I think David Rush is wrong -- you cannot possibly
be Tom Lord.


New Scheme

unread,
Dec 23, 2001, 2:17:19 AM12/23/01
to
markj...@cloaked.freeserve.co.uk (MJ Ray) wrote in message news:<slrna2acon.8...@cloaked.freeserve.co.uk>...
...

> Yeah, and you're a Nazi, Naggum.

The pettiness and arrogance of the core cadre of scheme "defenders of
the faith" is truly amazing.

Its time for a change. Time to leave these old men behind.

New Scheme

unread,
Dec 23, 2001, 2:19:47 AM12/23/01
to
David Rush <ku...@bellsouth.net> wrote in message

> Either you're trolling through nnkiboze, or it really is you, isn't it?

What the hell is this fetish with Erik? You can't defend scheme
problems and so attack everyone. Its a very poor substitute for
intellignet debate.

New Scheme

unread,
Dec 23, 2001, 2:25:23 AM12/23/01
to
markj...@cloaked.freeserve.co.uk (MJ Ray) wrote in message

> The Scheme community is a warm and welcoming place compared to the Common
> Lisp one, I think.

Say what?? Let me just repeat Mr Rush's "warm and welcoming" post:

---------------------------------------------


David Rush <ku...@bellsouth.net> wrote in message news:<okfg064...@bellsouth.net>...

> So who the fuck are you anyway? [...]
> This is such bullshit... [...]
> This is such bullshit, it has to be a troll. You're secretly Erik
> Naggum aren't you? [...]
> I did it in Scheme because I don't have to fuck around with
> a lot of stupid mis-features from 'advanced' languages like
> Perl, Python, Tcl, Ruby, or (God help us) C++ and Java [...]
> the current generation of no-talent simps graduating into
> the CS business.
> > Solicit help from the Common Lisp community [...]
> They're a bunch of losers who have bought and sold the
> lambda-nature for a profit. [...]
> So who the fuck are you, Mr. Hotmail.com?

--------------------------------------------

> The the open, academic-yet-practical, friendly spirit of
> Lisp lives on in comp.lang.scheme and numerous general lisp mailing lists.
> We just don't like anonymous posters saying that we got it all wrong.

hahaha the "friendly spirit" lives on does it?? hahaha

Erik Naggum

unread,
Dec 23, 2001, 2:25:38 AM12/23/01
to
* markj...@cloaked.freeserve.co.uk (MJ Ray)

| Oh joy. I thought I saw the last Naggum post when I unsubbed from
| comp.lang.lisp.

It was one of your own (David Rush) who called on me, blaming me for his
serious coping problems when that New Scheme fellow posted some heretical
comments that could threaten to undo the universe as he knew it. I am
sure that the Scheme religion needs a Devil figure and that you guys are
so irrational as to blame the Devil when you need to explain some of the
otherwise _inexplicable_ evil that happens to you (like reality invading
your nice little theories), but if I wanted to undo the Scheme community,
nobody would know it had even existed, OK? Such are my evil powers. I
_let_ you insufferable little freaks continue to have your community,
because you do less harm believing in and being preoccupied with Scheme
than if you were roaming free. Or perhaps this Devil imagery that you
guys seem to need is a bit stale and idiotic?

| Are you still sore that Scheme is installed on far more computers than
| oxymoronically-named "Common" Lisp?

No, never was. On the contrary, I am quite happy that all those who
install Common Lisp systems actually use them productively.

Have you thought about how _necessary_ it is for you Scheme freaks to be
hostile to those who do not agree with you? E.g., where _did_ the stupid
need to attack Common Lisp now come from? So immature and vindictive!

On the other hand, if you suffer form Perl envy, I am sure that it is
natural to think that other language communities must suffer from similar
problems, but so far, we have had a large number of Scheme freaks invade
Common Lisp fora to tell us how superior Scheme is, while no Common Lisp
programmers invade Scheme camps to tell you how good Common Lisp is. Why
is this? Well, we know that Common Lisp is better than Scheme, and so do
you, so there is no need to repeat the obvious, but any clueless Scheme
freak who feels the urge to rebel against authority and common sense must
try to provoke those better than him. That is why you had to include
that stupid attack on Common Lisp, too. So immature. So Scheme.

Incidentally, are you still raping preschool children? Scheme is the
favorite language of pedophiles, who love the pure and small, you know.

| The Scheme community is a warm and welcoming place compared to the Common
| Lisp one, I think.

Of course you think so. But let us ask this New Scheme fellow, or any of
the other people that Scheme freaks routinely attack on no basis at all.
Why did your David Rush need to attack me this time, for instance? Why
did you have to attack Common Lisp? I have not done anything to you
insane fucks, but you nutballs need no provocation to attack me. Why?
Do you think normal, sane people behave the way you do?

Anyone can see that a community of people who condone and support attacks
on others behind their back is neither warm nor welcome, no matter how
much you wish to be and lie that you are. Most religions have been warm
and welcome to those likely to be duped by their gospel, and extremely
hostile to those who would be a threat to them. Which one of them would
say that some _other_ religion is more warm and welcoming than they are?
So this vacuous phrase is sheer marketing. When you need to engage in
such marketing, you must know that you have a shitty product that nobody
would buy if they knew the truth about it. What a scheme!

| The the open, academic-yet-practical, friendly spirit of Lisp lives on in
| comp.lang.scheme and numerous general lisp mailing lists.

Of course you believe this. You have chased away every free-thinking
person who has ever discarded Scheme and you display _such_ hatred of
non-believers that you are like the biological end result of in-breeding.
The people who come to you in the first place are already converts and
are unlikely to question the gospel. Those who do not like Scheme do not
exactly have to deal with you -- which is also why you Scheme freaks have
to come to Common Lisp groups and fora and make a stupid scene.

| We just don't like anonymous posters saying that we got it all wrong.

Are you sure that is what he said? Are you sure that those who do not
believe in the Scheme religion would react the same way? Have you found
a rational person you could ask how would react to that article? I would
bet that not a single rational person would say that you got it all wrong
-- on the contrary, a reasonable reading is you got it right _eons_ ago,
but now you need do something more to keep doing the right thing. Of
course, a card-carrying Scheme nutcase would feel all defensive only if
he _knew_ that his favorite religion was all wrong, and therefore needs
to stop people from figuring it out. That is how organized religions
have reacted to "heretics" for ages.

It is quite amazing how fanatic and stupid you Scheme freaks are. Of
course you think you are friendly -- you only have people around you who
are in complete agreement on something _really_ stupid, and _anybody_ is
all friendly when they are never challenged by disagreement of any kind,
but challenge you guys and one gets to see what you are really made of:
Just watch David Rush in action, or your opening line. Just look at how
you treat people who disagree with your beliefs!

But trust me on this: Unless that psychotic David Rush character had been
so amazingly stupid as to blame me for this, _and_ that New Scheme fellow
had cross-posted it back to the newsgroups that coward little shit David
Rush did _not_ post to, none of this would have happened. Perhaps you
friendly Scheme freaks need to purge your own evils and excommunicate the
worst among your own? I would have started by frying David Rushs' balls.

It is increasingly obvious that Scheme is a mental disease, particularly
since you mental cases always make a point out of attacking non-believers
out of the blue. They do not even have to be posting to your newsgroup!

Terry Reedy

unread,
Dec 23, 2001, 2:43:36 AM12/23/01
to
> Say what?? Let me just repeat Mr Rush's "warm and welcoming" post:

Please delete comp.lang.python from this thread. (and maybe
c.l.perl).

Terry J. Reedy

MJ Ray

unread,
Dec 23, 2001, 4:26:24 AM12/23/01
to
New Scheme <news...@hotmail.com> wrote:
>The pettiness and arrogance of the core cadre of scheme "defenders of
>the faith" is truly amazing.

I can't believe you actually continued the thread. Can't you take a hint?
Go read up about usenet :P

MJ Ray

unread,
Dec 23, 2001, 4:27:33 AM12/23/01
to
New Scheme <news...@hotmail.com> wrote:
>Say what?? Let me just repeat Mr Rush's "warm and welcoming" post:
[...]

>hahaha the "friendly spirit" lives on does it?? hahaha

How many places do you know that are warm and welcoming to anonymous idiots?

Followups set.

MJ Ray

unread,
Dec 23, 2001, 4:33:59 AM12/23/01
to
Erik Naggum <er...@naggum.net> wrote:
> Have you thought about how _necessary_ it is for you Scheme freaks to be
> hostile to those who do not agree with you? E.g., where _did_ the stupid
> need to attack Common Lisp now come from? So immature and vindictive!

Sorry Erik. I attacked you, not Common Lisp. Or are you Common Lisp
itself?

> [...] so far, we have had a large number of Scheme freaks invade


> Common Lisp fora to tell us how superior Scheme is, while no Common Lisp
> programmers invade Scheme camps to tell you how good Common Lisp is.

I can only think of one Common Lisp forum, CLiki, and it contains little
about Scheme. Maybe you wish to make general Lisp fora "pure" and filled
only with your One True Lisp?

I've snipped the rest of your content-free post. Followups set.

Erik Naggum

unread,
Dec 23, 2001, 6:01:15 AM12/23/01
to
* Erik Naggum

> Have you thought about how _necessary_ it is for you Scheme freaks to be
> hostile to those who do not agree with you? E.g., where _did_ the stupid
> need to attack Common Lisp now come from? So immature and vindictive!

* MJ Ray


| Sorry Erik. I attacked you, not Common Lisp. Or are you Common Lisp
| itself?

Could you explain what "oxymoronically-named "Common" Lisp?" is if not an
attack? Do you think your immature and vindictive "opinions" do _not_
constitute an attack? If so, I understand better what you mean by "warm
and welcoming".

And just _why_ do you attack me? You are just warm and welcoming, right?

| Maybe you wish to make general Lisp fora "pure" and filled only with your
| One True Lisp?

No, that would be the Scheme way of dealing with diversity of opinion, as
we have seen from you guys already. This is one of the really important
differences between Common Lisp and Scheme. It is not suprising that you
do not know this, considering your "warm and welcoming" behavior.

By the way, you are probably right. The Scheme community is certainly
more "warm and welcoming" than the Common Lisp community."

| I've snipped the rest of your content-free post.

So you lack the courage to deal with all forms of counter-information.

Hirotaka Yamamoto

unread,
Dec 23, 2001, 8:08:09 AM12/23/01
to
Erik Naggum <er...@naggum.net> writes:

> So you lack the courage to deal with all forms of counter-information.

So you do too against my post.

israel r t

unread,
Dec 23, 2001, 7:59:14 AM12/23/01
to
On Sun, 23 Dec 2001 09:33:59 GMT, markj...@cloaked.freeserve.co.uk
(MJ Ray) wrote:

>Erik Naggum <er...@naggum.net> wrote:
>> Have you thought about how _necessary_ it is for you Scheme freaks to be
>> hostile to those who do not agree with you? E.g., where _did_ the stupid
>> need to attack Common Lisp now come from? So immature and vindictive!
>
>Sorry Erik. I attacked you, not Common Lisp. Or are you Common Lisp
>itself?

Only on weeksdays.
On weekends, Erik is God.

At least that is what he tells the men in the white coats...

New Scheme

unread,
Dec 23, 2001, 8:35:42 AM12/23/01
to
markj...@cloaked.freeserve.co.uk (MJ Ray) wrote in message news:<slrna2b8q0.1...@cloaked.freeserve.co.uk>...

Sure, I know that when you called Erik a Nazi the thread was supposed
to end. So what. You seem to think that such things are holy laws,
nver to be broken, just like your blind and foolish devotion to the
antiquated RnRS document.

Face it; you are a sheep. It will be people like me, with the guts to
think about change, who will change the world. Not gutless little
beurocrats like yourself. Go back to masturbating over the RnRS
document.

New Scheme

unread,
Dec 23, 2001, 8:39:41 AM12/23/01
to
"Anton van Straaten" <an...@appsolutions.com> wrote in message news:<hhTU7.7752$PO5.1...@newsread1.prod.itd.earthlink.net>...
> A new standard won't be constructed by anonymous people, that's for sure.
>

And a new standard won't be constructed by people who don't have the
guts to stand up and ask for change.

> Further proof that a sufficiently ignorant post is indistinguishable from a
> troll.

And a new standard won't be constructed by people who would rather
insult those with more creativity and intelligence than their own
petty little minds.

Erik Naggum

unread,
Dec 23, 2001, 10:03:03 AM12/23/01
to
* Hirotaka Yamamoto <ym...@yc5.so-net.ne.jp>

| So you do too against my post.

"How can you say this without proof?" Do you know the future? Can I
have your crystal ball so I can see if you grow a brain in the future?

I thought you were full of shit when I got that moronic response from
you, but thank you for _proving_ it with this response. You are a credit
to the Scheme community, however, since you have the guts to post your
shit in full public view. Most of the spineless wimps who think Scheme
is not completely worthless seem to prefer to talk behind people's back.

Erik Naggum

unread,
Dec 23, 2001, 10:13:26 AM12/23/01
to
* israel r t <isra...@antispam.optushome.com.au>

| Only on weeksdays.
| On weekends, Erik is God.
|
| At least that is what he tells the men in the white coats...

You seem to have a disconcerting amount of experience in this particular
area of the human condition. You have been absent form our newsgroups
for quite a while, too. Have you recovered? Are you out on probation?
Anyhow, I am sorry that I have triggered your problems, again. Please do
not kill anyone this time. Instead, enjoy the peaceful holiday season,
and get some _better_ help to get over your personal problems, will you?

Sander Vesik

unread,
Dec 23, 2001, 10:56:14 AM12/23/01
to
In comp.lang.scheme IsraelRT <isra...@optushome.com.au> wrote:
> On 22 Dec 2001 06:07:37 -0800, news...@hotmail.com (New Scheme)
> wrote:

>>> Or an anonymous troll who is too scared to use his real name ?
>>
>>You obviously didn't read David Rush's rant. Are you suffering from a
>>bit of selective amnesia?

> Still posting anonymously ?

Oh, please! This is a totally irrelevant small detail.

> Coward.

It would have been nice of you to actualy refute his claims, and not just
namecall.

--
Sander

+++ Out of cheese error +++

Anton van Straaten

unread,
Dec 23, 2001, 11:57:55 AM12/23/01
to
Sander Vesik wrote:
>It would have been nice of you to actualy refute his claims, and not just
>namecall.

Except that the troll's claims are self-fulfilling. By posting an
essentially content-free rant under a pseudonym, he generated some annoyed
responses. He then used that as "evidence" in his argument:

>Anyone calling for injection of fresh ideas into the language is
>attacked with a level of spite and religious vehemence rarely seen
>outside of fundamentalist religious sects.

The problem with this is, had this person posted a reasoned message about
the issues in question, it's quite unlikely that the same kind of response
would have been generated.

Besides, if the troll is claiming that he's afraid to post under his real
name because of the response it would generate, is it because he's afraid of
a few flames? Or is he simply unwilling to tarnish his reputation, which
would certainly suffer if he posted messages like that first one, which was
an amateurish call-to-arms based on a faulty premise.

I support the idea of some movement in the standards area myself, but that
isn't the troll's motivation, you can be sure - or if it is, he has a very
strange way of going about it.

Anton

Anton van Straaten

unread,
Dec 23, 2001, 12:08:45 PM12/23/01
to
Sander Vesik wrote:
>It would have been nice of you to actualy refute his claims, and not just
>namecall.

Except that the troll's claims are self-fulfilling. By posting an

David Rush

unread,
Dec 23, 2001, 1:08:38 PM12/23/01
to er...@naggum.net
Erik Naggum <er...@naggum.net> writes:
> But, in the interest of aiding the recovery of your mental health: no, it
> is not me

Imagine my relief.

> Again, Merry Christmas, David Rush. Best wishes for your mental health.

And you have mine for yours.

> Consider putting this to rest by not replying, David.

Consider that you have given the best laugh I've had all day, at the least.

> It was your call
> to provoke me with your rabid false accusation.

Erik, you take yourself too seriously. YHBT. Deal with it. I didn't
seriously think that you were 'New Scheme' I was primarily referring
to the tone and content, both of which are easily imagined as
originating with you.

> It is your call to end it, too.

Done.

> Be the man you were not when you posted to comp.lang.scheme,
> only,

I was trying to avoid a major multi-group flame-war about business
which is properly the concern of c.l.s. Cross-posting is nearly always
bad. Cross-posting in such a way as began this thread is even worse. I
was trying to limit the fall-out, rather than cluttering up forums
where I am not a stakeholder.

> Accept that you are completely nuts and are so
> out of your mind that you need to personify your mental problems. No
> apology for your unforgivable behavior is necessary.

No apology is offerred. You are a perfect work of art Erik. Don't ever
change.

> I will be happy with you.

I doubt that will ever happen.

david rush
--
And Visual Basic programmers should be paid minimum wage :)
-- Jeffrey Straszheim (on comp.lang.functional)

Sander Vesik

unread,
Dec 23, 2001, 2:26:16 PM12/23/01
to
In comp.lang.scheme Anton van Straaten <an...@appsolutions.com> wrote:
> Sander Vesik wrote:
>>It would have been nice of you to actualy refute his claims, and not just
>>namecall.

> Except that the troll's claims are self-fulfilling. By posting an
> essentially content-free rant under a pseudonym, he generated some annoyed
> responses. He then used that as "evidence" in his argument:

Well... tthe original mail wasn't *THAT* bad - besides, trolls are
trolls, you don't have to feed them...

>>Anyone calling for injection of fresh ideas into the language is
>>attacked with a level of spite and religious vehemence rarely seen
>>outside of fundamentalist religious sects.

> The problem with this is, had this person posted a reasoned message about
> the issues in question, it's quite unlikely that the same kind of response
> would have been generated.

> Besides, if the troll is claiming that he's afraid to post under his real
> name because of the response it would generate, is it because he's afraid of
> a few flames? Or is he simply unwilling to tarnish his reputation, which
> would certainly suffer if he posted messages like that first one, which was
> an amateurish call-to-arms based on a faulty premise.

> I support the idea of some movement in the standards area myself, but that
> isn't the troll's motivation, you can be sure - or if it is, he has a very
> strange way of going about it.

> Anton


israel r t

unread,
Dec 23, 2001, 5:56:04 PM12/23/01
to

israel r t

unread,
Dec 23, 2001, 5:57:11 PM12/23/01
to
On Sun, 23 Dec 2001 15:03:03 GMT, Erik Naggum <er...@naggum.net> wrote:

>* Hirotaka Yamamoto <ym...@yc5.so-net.ne.jp>
>| So you do too against my post.
>
> "How can you say this without proof?" Do you know the future? Can I
> have your crystal ball so I can see if you grow a brain in the future?

At least we can be secure in the knowledge that you will not grow a
personality in any forseeable future.

israel r t

unread,
Dec 23, 2001, 6:00:49 PM12/23/01
to
On 23 Dec 2001 05:35:42 -0800, news...@hotmail.com (New Scheme)
wrote:


>Face it; you are a sheep. It will be people like me, with the guts to
>think about change, who will change the world.

Yeah, with so much guts that they have to post anonymously and troll
the newsgroups. You sound like a first year undergraduate at one of
the more dubious tafe/polytechnics.

>Not gutless little
>beurocrats like yourself.

I hope that who ever changes the world has better spelling skills than
you have.

israel r t

unread,
Dec 23, 2001, 6:02:35 PM12/23/01
to
On 23 Dec 2001 18:08:38 +0000, David Rush <ku...@bellsouth.net> wrote:


>Erik, you take yourself too seriously. YHBT. Deal with it. I didn't
>seriously think that you were 'New Scheme' I was primarily referring
>to the tone and content, both of which are easily imagined as
>originating with you.

New Scheme was not as wildly abusive as Erik generally is.
Perhaps New Scheme is a bot that Erik wrote :-)

israel r t

unread,
Dec 23, 2001, 8:51:54 PM12/23/01
to

Lisp needs to reinvent itself.
The last standard was released in 1994, ie nearly a decade ago.

As Paul Graham said:
"It's about time for a new dialect of Lisp. The two leading dialects,
Common Lisp and Scheme, have not been substantially changed since the
1980s.

What a language is has changed since then. In 1985, a programming
language was just a spec. Now, thanks to Perl, it means not just (and
maybe not even) a spec, but also a good free implementation, huge
libraries, and constant updates."

Lisp is no longer taught * at leading universities.
Lisp jobs are increasingly scarce.

Lisp is viewed in the real world as akin to COBOL only less likely to
provide a paying job.

Lisp has a severe image problem . ***
Eventually, it will go the way of Jovial and the Titan command
language.

Paul Graham is moving in the right direction with his lisp dialect
Arc. From his talk at the Lightweight Languages Workshop
MIT Artificial Intelligence Lab :

" In The Periodic Table, Primo Levi tells a story that happened when
he was working in a varnish factory. He was a chemist, and he was
fascinated by the fact that the varnish recipe included a raw onion.
What could it be for? No one knew; it was just part of the recipe. So
he investigated, and eventually discovered that they had started
throwing the onion in years ago to test the temperature of the
varnish: if it was hot enough, the onion would fry.

We're going to try not to include any onions in Arc. Everything is
open to question. "
http://www.paulgraham.com/arcll1.html


Footnotes:

* except in increasingly marginalised AI courses .

** The mega-LOCs of COBOL in the finance sector will ensure jobs for
COBOL drudges well into the next millenium.

*** and I am not referring to Naggum either...


Bill Richter

unread,
Dec 23, 2001, 8:35:03 PM12/23/01
to
>>>>> "Erik" == Erik Naggum <er...@naggum.net> writes:

Erik, I'd be happy to talk Scheme with my old Emacs buddy, but I'm not
gonna crosspost. I'll ignore any insults, in return for you sharing
your quite valuable expertise. (I implore my fellow c.l.s.-ers to
stop trading insults with Erik!)

If you still want a functional programming paradigm, there are lots and
lots of more recent academic experiments that should be at least as
useless as Scheme for real work, but which could be a little harder to
teach, since they actually try to do _something_ and are not just trying
to make a language optimized for reimplementation of itself by
students. [...]
The only thing you probably cannot get in other languages is a full
implementation of the language itself done as a student project.

This sounds fine. I'm only interested in Scheme as a language to
teach me how to program. Functional programming & metacircular
interpreters are great teaching tools, but...

Ask yourself what you actually _like_ in Scheme.

I want to learn the mathematical meaning of assignment. Most
"real-world" computing uses assignment/mutation, so a student, like
me, has to come to grips with it. I'm hoping to learn this from
Scheme, and here's how, and why Scheme is better than other languages:

Scheme is associated with good mathematical documents, like
Felleisen's work on LC_v, and the DS of R5RS.

LC_v] There's lots of good stuff to read about the Lambda Calculus
(LC), like Barendregt's book, but it doesn't describe functional
programming. Plotkin's variation LC_v is essentially Scheme without
mutation, and that's well-described in Felleisen & Flatt's notes on
LC_v:

<http://www.cs.utah.edu/~mflatt/tmp/notes.dvi>

Point is that you can only beta reduce an expression

((lambda (x) body) V) ---> body[x <- V]

if the expression V is a "value". In LC, you can always reduce, and
that's not what we do in functional programming.

Felleisen's later work on State LC_v ought to model Full Scheme, and
maybe it does, but it's sketchy. Plenty of work for me to do there.
There's a big insight from State LC_v which is implicitly used in
Felleisen et al's book
<http://www.htdp.org>
"How to Design Programs
An Introduction to Computing and Programming"

(I think HTDP and SICP are quite good teaching books. So even if you
think Scheme isn't a great language, what's as better teaching book?)

The insight from State LC_v is that values are *syntactically*
defined. In R5RS, and I think Common Lisp, the value of a Scheme
expression is a Scheme *object*, and it's mucho work to figure out
what the definition of a Scheme object is, or Lisp objects. So HTDP
never defines Scheme objects, and everything appears to be handled at
the level of expression, i.e. syntax. I like that a lot. It's the
sort of benefit one expects from Lambda Calculus type stuff.

R5RS DS] The R5RS DS (sec 7.2) gives a precise mathematical
description of what answers a Scheme program will print. That is, the
R5RS DS writes down a (computable) function for how to produce the
answers. I don't know of another Lisp-like language that has such a
DS. I don't like this kind of description, but it's short & precise!
The R5RS DS function is described in terms of a set of locations L and
a set E of Scheme objects (expressed values), etc, so e.g. there's a
definition (internal to the R5RS DS definition of the function) of
cons cells:

E x E x {true, false} = E_p subset E

So a cons cell is (internally) defined to be a pair of locations
together with a mutability flag. No such description is given in
CLTL. I don't know of any Lisp family language that has such a simple
& precise description of cons cells. CLTL seems to assume that the
readers (all language designers) already knew how cons cells work, and
only worried about differences between Lisp language. So maybe it's
OK for CLTL to not precisely describe cons cells. But I don't know
of another Lisp book that's better. I've seen various descriptions
like "everything in Lisp is a pointer", but for me, that's vague, and
also something I don't like. I want to get rid of locations
altogether, not introduce new ones!

BTW the Emacs Lisp reference manual is incoherent about pointers,
using "hold" and "point to" as synonyms. R5RS is precise here!

Let me harp further on Steele's book CLTL. I don't see any clarity on
the matter of pointers. Here's from the latex sources:

\chapter{Lists}

A {\it cons}, or dotted pair, is a compound data object having two
components called the {\it car} and {\it cdr}. Each component may
be any Lisp object. A {\it list} is a chain of conses linked by
{\it cdr} fields;

I don't like that at all. A careful reading of R5RS shows that the
"car field" and "cdr field" are the 2 locations mentioned in the DS,
e.g.

procedure: (car pair)

Returns the contents of the car field of pair.

procedure: (set-car! pair obj)

Stores obj in the car field of pair.

So one guesses that the car field is a location in which contents can
be stored. I could use clearer writing, but the R5RS DS is quite
clear, and I don't see anywhere in CLTL where it's hinted that that
the car field is a pointer to the car, something like that. In fact,
grepping through the latex sources for " field" shows that this one
sentence above

A {\it list} is a chain of conses linked by {\it cdr} fields;

is the only place in CLTL where field is used this way. Continuing,

\section{Alteration of List Structure}

The functions \cd{rplaca} and \cd{rplacd} may be used to make
alterations in already existing list structure, that is, to change
the {\it car} or {\it cdr} of an existing cons. One may also use
\cd{setf} in conjunction with \cd{car} and \cd{cdr}.

The structure is not copied but is destructively altered; hence
caution should be exercised when using these functions, as strange
side effects can occur if portions of list structure become shared.

There's no understanding of these strange side effects that doesn't
involve something like C pointers or addresses, and CLTL just seems to
ignore the matter.

To repeat: a book making peace between rival Lisp factions can
arguably ignore everything that the factions agree on. So it's maybe
OK that CLTL doesn't explain cons cells. But the only Lisp language
family document that I've seen that has a clear explanation is R5RS.

--
Bill
<http://www.math.nwu.edu/~richter>

Anton van Straaten

unread,
Dec 23, 2001, 9:32:11 PM12/23/01
to
>> Except that the troll's claims are self-fulfilling. By posting an
>> essentially content-free rant under a pseudonym, he generated some
annoyed
>> responses. He then used that as "evidence" in his argument:
>
>Well... tthe original mail wasn't *THAT* bad


I think my description, "essentially content-free rant", is pretty accurate.
The fact that it was posted anonymously didn't help.

If we give the troll the benefit of the doubt, what points does he actually
make in the original post? It's an opinion piece at best, with no
substantiation. I find it hard to believe that anyone who understands what
Scheme is about would agree with it, even if they share the desire for some
action in the standards area. It seems needlessly inflammatory - it only
succeeds as a troll, in which case, it had the desired effect.

>trolls are trolls, you don't have to feed them...

They can still do damage. Especially with all this cross-posting! I did
that by accident, myself, but I'm stopping now.

Anton

israel r t

unread,
Dec 23, 2001, 10:48:51 PM12/23/01
to
On Sun, 23 Dec 2001 15:13:26 GMT, Erik Naggum <er...@naggum.net> wrote:

> You seem to have a disconcerting amount of experience in this particular
> area of the human condition.

Erik you seem to have become a pain in the rectum even in the
Norwegian groups....

http://groups.google.com/groups?q=erik+naggum+abuse&hl=en&rnum=2&selm=uEdt5.1017%24N4.315793%40juliett.dax.net

Frank A. Adrian

unread,
Dec 23, 2001, 11:37:54 PM12/23/01
to
israel r t wrote:
> Lisp needs to reinvent itself.
> The last standard was released in 1994, ie nearly a decade ago.
>
> As Paul Graham said:
> "It's about time for a new dialect of Lisp. The two leading dialects,
> Common Lisp and Scheme, have not been substantially changed since the
> 1980s.

Fine. Do you have (a) suggestions or (b) funding for people to participate
in such an effort?

> What a language is has changed since then. In 1985, a programming
> language was just a spec. Now, thanks to Perl, it means not just (and
> maybe not even) a spec, but also a good free implementation, huge
> libraries, and constant updates."

I guess. Inventors of Dylan, Curl, and AutoLisp, at the very least, would
tend to disagree with you.

> Lisp is no longer taught * at leading universities.
> Lisp jobs are increasingly scarce.

Sad. 90% of anything is crap, to quote Ted Sturgeon. I would assume this
applies to incomplete university educations and most jobs, as well.

> Lisp is viewed in the real world as akin to COBOL only less likely to
> provide a paying job.

Probably true, but see my last comment. When exposed to crap long enough,
even good people start having trouble telling the difference.

> Lisp has a severe image problem . ***
> Eventually, it will go the way of Jovial and the Titan command
> language.

Yup, just like Fortran. It's been around for 50 years. I guess it'll be
good for another 50. By then, if it hasn't been updated, I'll start to
worry.

> Paul Graham is moving in the right direction with his lisp dialect
> Arc.

It's nice to have an opinion. You're entitled to yours, no matter how
misguided.

[Obligatory anecdote about needless process step/ingredient snipped.]

There are many people that believe Common Lisp needs a bit of updating. Do
you have (a) suggestions or (b) funding? If not, are you just trying to
raise hackles, showing that people here are less friendly than on
c.l.scheme? If you have come here with that objective, you should have
also noticed that your comments were answered without rancor (albeit
briefly) and that most participants in this forum would answer you with
that tone (not, if you had come with the aforementioned goal in mind, you
should have been deserving of this much courtesy). Of course, cluelessness
in followups and arguments might be handled with much less forgiveness.

faa

Erik Naggum

unread,
Dec 24, 2001, 1:56:10 AM12/24/01
to
* David Rush <ku...@bellsouth.net>

| Consider that you have given the best laugh I've had all day, at the least.

Laughter being the idiot's only working defense mechanism, I am glad you
needed to laugh and also to tell me about it. Next time, be _smarter_,
but then again, if you did, you would not be using Scheme, anymore.

| Erik, you take yourself too seriously.

No, but you know what mistake I made? I took _you_ seriously, any amount
of which is too seriously. I have heard from one of your fellow Schemers
that I should not take you seriously (of course expressed in the usual
"warm and welcoming" tone that is so typical of the Scheme community),
and I will not make that mistake again.

| I didn't seriously think that you were 'New Scheme'

Yes, I should really have realized that you were shooting your mouth off.
Contrary to my expectation about postings in comp.lang.*, I doubt that
you have the mental capacity to be serious about anything. I just find
it both sad and annoying that cretins like yourself have such a strong
hatred for me. I resolve for next year to expect less from Scheme freaks
-- if you were sufficiently smart, you would simply not be Scheme freaks.

| I was trying to avoid a major multi-group flame-war about business which
| is properly the concern of c.l.s. Cross-posting is nearly always bad.
| Cross-posting in such a way as began this thread is even worse. I was
| trying to limit the fall-out, rather than cluttering up forums where I am
| not a stakeholder.

Cross-posting is usually bad, but thanks to New Scheme, who cross-posted
his reply where he quoted your stupid remark, I could see what _another_
Scheme bigot was made of. What I learned this time around was that the
Scheme community does not leave people alone, but continue to be hateful
and vindictive for years. This underscores what it means for Scheme to
be a "warm and welcoming" community, as that other dirtbag keeps saying.

| You are a perfect work of art Erik. Don't ever change.

Wow, thank you. But what is unchanging and unaffected by ever-changing
reality is your impression of people you have decided to hate. This is
your personality disorder, and it needs medical attention. Hateful and
spiteful people like yourself are usually unable to learn something as
complex as a useful programming language, however, and this explains why
you are still using Scheme, and have not yet figured out that if you need
to get some work done, you need Common Lisp.

What I find rather humorous, though, is that for all their "superiority",
Scheme freaks are even more easily ignitable by heretics than any other
cult of believers in false gods. What you tell me with your behavior is
that Scheme is only a great language as long as every critic is chased
away or made to shut up. Next time you nutballs want to chase away
someone who thinks your silly little toy language needs updating to be
useful in the fast-changing real world, consider behaving maturely, if
you are still using Scheme if you mature, that is.

Erik Naggum

unread,
Dec 24, 2001, 2:03:18 AM12/24/01
to
| Erik you seem to have become a pain in the rectum even in the Norwegian
| groups....

Your amzingly strong interest in me looks more and more unhealthy. How
much time do you spend every day searching the Net for stuff about me?
Do you have anyone who cares about you on this particular day that you
could talk to about your need to post messages to the whole world that
says _nothing_ but that you are _obsessing_ about me? Seek help, OK?

Erik Naggum

unread,
Dec 24, 2001, 2:24:03 AM12/24/01
to
| Lisp needs to reinvent itself.
| The last standard was released in 1994, ie nearly a decade ago.

How old are you?

Janos Blazi

unread,
Dec 24, 2001, 5:03:12 AM12/24/01
to
> > As Paul Graham said:
> > "It's about time for a new dialect of Lisp. The two leading dialects,
> > Common Lisp and Scheme, have not been substantially changed since the
> > 1980s.
>
> Fine. Do you have (a) suggestions or (b) funding for people to
participate
> in such an effort?

I think there are twi very interesting developments at the moment in this
direction:

* Paul Graham's Arc; couldn't Paul Graham play the same rôle for Lisp as
Guido
van Rossum for Python or Larry Wall for Perl? Am I too naïve? ("You are
not naive,
you are an idiot, start thinking! Thank you for proving it yourself by
your postings."
a certain gentleman would reply.)

* There could be a native CMUCL port to Windows.

J.B.


-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
Check out our new Unlimited Server. No Download or Time Limits!
-----== Over 80,000 Newsgroups - 19 Different Servers! ==-----

Bruce Lewis

unread,
Dec 24, 2001, 10:23:13 AM12/24/01
to
Erik Naggum <er...@naggum.net> writes:

> Have you thought about how _necessary_ it is for you Scheme freaks to be
> hostile to those who do not agree with you? E.g., where _did_ the stupid
> need to attack Common Lisp now come from? So immature and vindictive!

Many of the readers on the various cross-posted groups may think, "how
hypocritical of Erik Naggum to talk about hostility and vindictiveness!"
Not so, gentle readers. This cannot be the real Erik Naggum; it is an
imposter.

I've read real Erik Naggum postings in the past. Perhaps I didn't
follow those threads all the way through, but the postings I did read
were clever, witty, and genuinely amusing to read. The repetitive venom
in this recent thread pales by comparison.

To the imposter, let me say this: You have a long way to go to catch up
with Erik Naggum. Your postings include echoes of what he's posted in
the past, but that's actually what gave you away. The real Erik Naggum
would have come up with some new angle for deprecating the Scheme
community. You wouldn't catch him continuing to beat the "religious
cult" dead horse, though it was quite funny when he first introduced it.
And the references to mental institutions would be more clever.
Whenever he gets back from holiday, I'm sure he'll put you in your
place!

To the other groups, let me say that Common Lisp and Scheme are not
mutually hostile communities. There are certain high-profile
exceptions, but these (the real ones, at least) can be genuinely fun to
read.

As an act of self-sacrifice for the greater good, I'm setting followups
for this flame war to comp.lang.scheme. If the pathetic imposter
chooses to ignore followups, he'd better have a posting that's original
and witty.


--
<brlewis@[(if (brl-related? message) ; Bruce R. Lewis
"users.sourceforge.net" ; http://brl.sourceforge.net/
"alum.mit.edu")]>

David Rush

unread,
Dec 24, 2001, 10:37:21 AM12/24/01
to
Erik Naggum <er...@naggum.net> writes:

In typically propagandistic, cross-posted fashion.

> * news...@hotmail.com (New Scheme)
> | Its time to reinvigorate scheme.
>
> No, it is not. It is time to leave Scheme behind. It used to be a
> language that brought many new ideas into _one_ language, but all of the
> good ideas have been picked up by other, better languages. Common Lisp,
> Perl, Python, Ruby, and Java have all benefited from the little group of
> impractical purists who designed this minimalistic language experiment.
> Look, Tengwar is more widely used than Scheme these days.

Erik! glad to see you're thinking as clearly as ever.

> Ask yourself what you actually _like_ in Scheme. Chances are you can get
> it, better implemented and better understood, in any number of other
> languages.

Latently-typed first-class functions, and a single namespace,
guaranteed O(0) tail calls. SML comes very close, but it's the only
other serious player in this game.

And yes, I narrowed the follow-ups. The S/N sucks when you
cross-post. This is about Scheme.

david rush
--
The important thing is victory, not persistence.
-- the Silicon Valley Tarot

David Rush

unread,
Dec 24, 2001, 10:43:30 AM12/24/01
to
news...@hotmail.com (New Scheme) writes:

> "Anton van Straaten" <an...@appsolutions.com> wrote:
> > A new standard won't be constructed by anonymous people, that's for sure.
>
> And a new standard won't be constructed by people who don't have the
> guts to stand up and ask for change.

Where are yours then. I'm have a measurable amount of risk that some
future employer might see my postings here, and decide not to employ
me because I've flamed you. You risk nothing. Stand up and be counted
bozo. Who are you, Mr. Hotmail.com?

> > Further proof that a sufficiently ignorant post is indistinguishable from a
> > troll.
>
> And a new standard won't be constructed by people who would rather
> insult those with more creativity and intelligence than their own
> petty little minds.

So where's your lovely draft standard? Most of the people in this
forum have been discussing Scheme's flaws and what to do about them. I
know of no contribution with your name on it. I'll be happy to review
your suggestions for their content. I'll not put up with you
insulting the very find minds who have helped craft the Scheme
language.

david rush
--
There's man all over for you, blaming on his boots the faults of his feet.
-- Samuel Becket (Waiting For Godot)

David Rush

unread,
Dec 24, 2001, 10:50:24 AM12/24/01
to
Erik Naggum <er...@naggum.net> writes:
> * David Rush <ku...@bellsouth.net>

> | I was trying to avoid a major multi-group flame-war about business which
> | is properly the concern of c.l.s. Cross-posting is nearly always bad.
> | Cross-posting in such a way as began this thread is even worse. I was
> | trying to limit the fall-out, rather than cluttering up forums where I am
> | not a stakeholder.
>
> Cross-posting is usually bad, but thanks to New Scheme, who cross-posted
> his reply where he quoted your stupid remark

So you're actually condoning bad usenet etiquette. I suppose that is
no surprise, really.

> | You are a perfect work of art Erik. Don't ever change.
>
> Wow, thank you.

My pleasure.

david rush
(with a wonderfully sentient .sigmonster...what does this tell you, Erik?)
--
... it's just that in C++ and the like, you don't trust _anybody_,
and in CLOS you basically trust everybody. the practical result
is that thieves and bums use C++ and nice people use CLOS.
-- Erik Naggum

Sander Vesik

unread,
Dec 24, 2001, 11:04:09 AM12/24/01
to
Anton van Straaten <an...@appsolutions.com> wrote:
>>> Except that the troll's claims are self-fulfilling. By posting an
>>> essentially content-free rant under a pseudonym, he generated some
> annoyed
>>> responses. He then used that as "evidence" in his argument:
>>
>>Well... tthe original mail wasn't *THAT* bad


> I think my description, "essentially content-free rant", is pretty accurate.
> The fact that it was posted anonymously didn't help.

> If we give the troll the benefit of the doubt, what points does he actually
> make in the original post? It's an opinion piece at best, with no
> substantiation. I find it hard to believe that anyone who understands what

Yes, its an opinion piece (all a call to arms if you will).

> Scheme is about would agree with it, even if they share the desire for some
> action in the standards area. It seems needlessly inflammatory - it only

Well, what he seems to want is 'decreased uncertainity' - which would
probably parse to be realting to all the places labled "is an error".
Which at least IMVHO is a weak point of scheme. For all its precision
otherwise, it tends to just say "don't do that" for just about any
kind of programmer or program error...

But as the mail is not too clear,its hard to say for sure.

> succeeds as a troll, in which case, it had the desired effect.

The initial piece was not really all that trollish except for the
crosspost.

>>trolls are trolls, you don't have to feed them...

> They can still do damage. Especially with all this cross-posting! I did
> that by accident, myself, but I'm stopping now.

> Anton


Anton van Straaten

unread,
Dec 24, 2001, 12:10:01 PM12/24/01
to
Sander Vesik wrote:
>Well, what he seems to want is 'decreased uncertainity' - which would
>probably parse to be realting to all the places labled "is an error".

I think he would have done better to post his technical concerns, then,
under his own name.

>Which at least IMVHO is a weak point of scheme. For all its precision
>otherwise, it tends to just say "don't do that" for just about any
>kind of programmer or program error...

I've never thought much about it - I always assumed it was one of those
areas in which implementations are free to make their own choices, since
imposing e.g. a standard exception system would imply a whole set of choices
which may not be appropriate for all Schemes.

To me, the problem seems to be that many people seem to want Scheme to have
a much bigger standard. That makes no sense to me. If you add a whole lot
of requirements to R5RS, you'll simply end up with a much more specific
language, like e.g. Dylan: Scheme with CLOS & sugar. That's great, but it's
only one possible direction that a language can go in. Scheme's advantage
is its feature-agnosticism, the fact that anything you want to do in Scheme
is equally natural: you can use it as a shell scripting language, you can
embed Prolog in it, you can write enormously complex systems with it.

My opinion is that if people want a bigger Scheme, a standard should be
developed on top of R5RS - a sort of "Big Scheme" standard, which might
specify the kinds of libraries and so on required by a full implementation
of Scheme, to assist in portability of fully-fledged applications. This
wouldn't constrain more specifically targeted Scheme implementations.

Sure, beyond libraries there are thorny areas like modules and exception
systems, but even those are possible to address portably. If enough users
agree on portable alternatives to some of the specific extensions that
implementations have, it'll have an effect. The situation right now is as
much the responsibility of the users of Scheme, who are no more of a single
mind than the implementors are.

>The initial piece was not really all that trollish except for the
>crosspost.

And the anonymous posting, the tone, and pejorative words like "ossified",
and statements about "old men".

Personally, I have great admiration for the "old men" who developed RnRS.
They continue to contribute to computer science, and some of them still
contribute in this group. I learn from them by reading their papers, and
their messages, both current and past.

If the desire was really to move Scheme forward, it doesn't seem very
productive to begin by insulting the people who made it what it is.

Anton

Hirotaka Yamamoto

unread,
Dec 24, 2001, 12:54:26 PM12/24/01
to
Bruce Lewis <brl...@yahoo.com> writes:

> Erik Naggum <er...@naggum.net> writes:
>
> > Have you thought about how _necessary_ it is for you Scheme freaks to be
> > hostile to those who do not agree with you? E.g., where _did_ the stupid
> > need to attack Common Lisp now come from? So immature and vindictive!
>
> Many of the readers on the various cross-posted groups may think, "how
> hypocritical of Erik Naggum to talk about hostility and vindictiveness!"
> Not so, gentle readers. This cannot be the real Erik Naggum; it is an
> imposter.

I'd wish I could believe your opinion, Bruce.
But I can hardly believe this guy is not the real Erik Naggum,
as I googled some past Erik's posts on USENET and found too many
aspects including headers pose too much resemblance with recent
posts in this thread.

Anyway I have found so far "this" Erik cannot help but involve
his emotion -- that appears hostility and vindictiveness over
opponent people -- into discussions.

To Erik: At least as of my first post on this thread, I didn't
hold any hostility about you. I just wanted for you to clarify
why features unique to Scheme should be considered to be bad
ideas. You used the word "universally", but at least for me,
it was unclear without any explanation or examples to convince
your opinion.

Maybe you got angry because of my improper wording or brevity;
sorry for that -- since English is not my native language, I
don't know if my words are proper or not.

Yamamoto

David Rush

unread,
Dec 24, 2001, 1:14:14 PM12/24/01
to
Sander Vesik <san...@haldjas.folklore.ee> writes:
> In comp.lang.scheme Anton van Straaten <an...@appsolutions.com> wrote:
> > Sander Vesik wrote:
> >>It would have been nice of you to actualy refute his claims, and not just
> >>namecall.
>
> > Except that the troll's claims are self-fulfilling. By posting an
> > essentially content-free rant under a pseudonym, he generated some annoyed
> > responses. He then used that as "evidence" in his argument:
>
> Well... tthe original mail wasn't *THAT* bad - besides, trolls are
> trolls, you don't have to feed them...

Guilty. Gomen kudasaimasu. It's just that we've actually been having
some amount of serious discussion on the same topic recently, and I
felt that Mr. Hotmail.com was not actually helping the issue at
all. I'd hoped to get him out of the closet (anger sometimes works) or
to get him to shut up.

david rush
--
Java and C++ make you think that the new ideas are like the old ones.
Java is the most distressing thing to hit computing since MS-DOS.
-- Alan Kay

israel r t

unread,
Dec 24, 2001, 4:43:06 PM12/24/01
to
On 24 Dec 2001 10:23:13 -0500, Bruce Lewis <brl...@yahoo.com> wrote:

>Erik Naggum <er...@naggum.net> writes:
>
>> Have you thought about how _necessary_ it is for you Scheme freaks to be
>> hostile to those who do not agree with you? E.g., where _did_ the stupid
>> need to attack Common Lisp now come from? So immature and vindictive!
>
>Many of the readers on the various cross-posted groups may think, "how
>hypocritical of Erik Naggum to talk about hostility and vindictiveness!"
>Not so, gentle readers. This cannot be the real Erik Naggum; it is an
>imposter.

>To the imposter, let me say this: You have a long way to go to catch up
>with Erik Naggum.

>Whenever he gets back from holiday, I'm sure he'll put you in your
>place!

At last !
Eric Naggum is impersonating Erik Naggum !

israel r t

unread,
Dec 24, 2001, 4:47:46 PM12/24/01
to

Lisp needs to reinvent itself.
The last standard was released in 1994, ie nearly a decade ago.

As Paul Graham said:
"It's about time for a new dialect of Lisp. The two leading dialects,
Common Lisp and Scheme, have not been substantially changed since the
1980s.

What a language is has changed since then. In 1985, a programming
language was just a spec. Now, thanks to Perl, it means not just (and
maybe not even) a spec, but also a good free implementation, huge
libraries, and constant updates."

Lisp is no longer taught * at leading universities.
Lisp jobs are increasingly scarce.

Lisp is viewed in the real world as akin to COBOL **only less likely

Andreas Bogk

unread,
Dec 24, 2001, 5:16:18 PM12/24/01
to

> Lisp needs to reinvent itself.

I suggest to take a look at Dylan. It's a pretty recent Lisp-like
language, and it's got a few things right (but on the other hand
omitted some features some people consider essential). I've also got
a list of things to do better on the next iteration.

You can learn a lot from Dylan when designing a new Lisp.

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)

Jeffrey Siegal

unread,
Dec 24, 2001, 7:26:36 PM12/24/01
to
Andreas Bogk wrote:
> I suggest to take a look at Dylan. It's a pretty recent Lisp-like
> language, and it's got a few things right (but on the other hand
> omitted some features some people consider essential).

I consider Lisp syntax (or something similarly elegant) to be
essential. I suspect that many proponents of Dylan-like languages would
consider it unacceptable. I strongly suspect there is no middle ground.

(Yes, I'm aware of Lisp-syntax Dylan, but I think there's a reason it
got abandoned.)

Andreas Bogk

unread,
Dec 24, 2001, 8:08:16 PM12/24/01
to
Jeffrey Siegal <j...@quiotix.com> writes:

> I consider Lisp syntax (or something similarly elegant) to be
> essential. I suspect that many proponents of Dylan-like languages would
> consider it unacceptable. I strongly suspect there is no middle ground.

For the language user, there may be no middle ground. From the
perspective of the language designer, the syntax is just one issue of
many, so even if you prefer S-expressions, there's still a lot of Lisp
to discover in Dylan.

> (Yes, I'm aware of Lisp-syntax Dylan, but I think there's a reason it
> got abandoned.)

The reason was that a lot of people, especially those who should be
persuaded to use Dylan, consider infix syntax to be more readable.
I'm well aware that this is paid with increased complexity in macros,
and I'm still not firm enough in macrology to know whether this is a
substantial complaint or not. Still, Dylan provides valuable input
for designing the next Lisp/Scheme/whatever.

Jeffrey Siegal

unread,
Dec 24, 2001, 8:37:32 PM12/24/01
to
Andreas Bogk wrote:
> > I consider Lisp syntax (or something similarly elegant) to be
> > essential. I suspect that many proponents of Dylan-like languages would
> > consider it unacceptable. I strongly suspect there is no middle ground.
>
> For the language user, there may be no middle ground. From the
> perspective of the language designer, the syntax is just one issue of
> many, so even if you prefer S-expressions, there's still a lot of Lisp
> to discover in Dylan.

Did you mean "A lot _for_ Lisp to discover?" There is little in Dylan
that didn't originate with Lisp, except the syntax. What does Dylan
have that Scheme + CLOS + "a collections library" doesn't have?

Thaddeus L Olczyk

unread,
Dec 24, 2001, 10:05:39 PM12/24/01
to
On 24 Dec 2001 23:16:18 +0100, Andreas Bogk <and...@andreas.org>
wrote:

>israel r t <isra...@antispam.optushome.com.au> writes:
>
>> Lisp needs to reinvent itself.
>
>I suggest to take a look at Dylan. It's a pretty recent Lisp-like
>language, and it's got a few things right (but on the other hand
>omitted some features some people consider essential). I've also got
>a list of things to do better on the next iteration.
>
>You can learn a lot from Dylan when designing a new Lisp.
>
>Andreas

What I saw of Dylan looked good, but it is a dead language. Stillborn.

Andreas Bogk

unread,
Dec 24, 2001, 10:13:44 PM12/24/01
to
Jeffrey Siegal <j...@quiotix.com> writes:

> > many, so even if you prefer S-expressions, there's still a lot of Lisp
> > to discover in Dylan.
> Did you mean "A lot _for_ Lisp to discover?" There is little in Dylan
> that didn't originate with Lisp, except the syntax.

No, I agree that most of Dylan originated in one Lisp dialect or
another. But I think that Dylan is a well-balanced blend of these
features, it feels good. That's why I suggest to at least take a look
at it when designing the next Lisp[0].

> What does Dylan have that Scheme + CLOS + "a collections library"
> doesn't have?

That would be conditions, type annotations and a useful module/library
system. Oh, and dynamism vs. performance tradeoffs like sealing,
primary classes and limited types.

Andreas

[0] Or "Lisp" or successor of Scheme which is "not a Lisp" or
whatever.

Bill Richter

unread,
Dec 24, 2001, 10:24:04 PM12/24/01
to
I goofed, writing:

There's no understanding these strange side effects [of set-car!]


that doesn't involve something like C pointers or addresses, and
CLTL just seems to ignore the matter.

That's not true. HTDP's approach is to proto-define cons/c*r/set-c*r!
as a procedure (essentially the same procedure definition in SICP),
and then define cons/c*r/set-c*r! as a *constructor* that has the same
semantics as this procedure, with the addition of pair? I'm not sure
what a constructor is, but I think that's a good definition of one :)

Other approaches might work too. What I'm complaining about is
pretending that a cons cell is an ordered pair of values (as opposed
to an ordered pair of pointers to those values). I think someone
reading CLTL who didn't already know Lisp would probably make that
mistake. But as I said, that's OK because CLTL isn't a language spec
like R5RS, but a peace treaty between rival Lisp factions who all
agreed on the semantics of cons/c*r/set-c*r!.

Jeffrey Siegal

unread,
Dec 25, 2001, 5:08:15 AM12/25/01
to
Andreas Bogk wrote:
> > What does Dylan have that Scheme + CLOS + "a collections library"
> > doesn't have?
>
> That would be conditions, type annotations and a useful module/library
> system.

I agree about modules, although I don't really like the way Dylan uses
multiple files to define a simple module. There should be a way of
doing that in-line. A CLOS-style object system does have type
annotations, at least at the method level (which is probably enough),
because they're necessary for dispatch. As for conditions, I prefer
passing condition handlers as explicit arguments. With proper tail
calls and limited use of call/cc to escape out of CPS, it works fine.

> Oh, and dynamism vs. performance tradeoffs like sealing,
> primary classes and limited types.

I think these are overhyped features which have been adaquately
addressed in Lisp/Scheme using either different implementations as
needed, declarations, etc.

Andreas Bogk

unread,
Dec 25, 2001, 2:19:12 PM12/25/01
to
olc...@interaccess.com (Thaddeus L Olczyk) writes:

> What I saw of Dylan looked good, but it is a dead language. Stillborn.

There are two Dylan compilers being actively maintained, one
commercial, one free. That's not exactly dead.

Andreas Bogk

unread,
Dec 25, 2001, 2:42:11 PM12/25/01
to
Jeffrey Siegal <j...@quiotix.com> writes:

> I agree about modules, although I don't really like the way Dylan uses
> multiple files to define a simple module. There should be a way of

The idea behind Dylan was that the source code resides in a code
database, and the file format is just used for interchange. Of
course, in reality there are source files, and the interchange format
is a little awkward to use. That should be easier, I agree.

> doing that in-line. A CLOS-style object system does have type
> annotations, at least at the method level (which is probably enough),
> because they're necessary for dispatch.

Having type annotations for bindings gives the optimizer a lot of meat
to work on.

> As for conditions, I prefer
> passing condition handlers as explicit arguments. With proper tail
> calls and limited use of call/cc to escape out of CPS, it works fine.

I don't think so. Having to pass around handlers for all sorts of
conditions is a nuisance. This is something CL and Dylan got right,
IMHO.

> > Oh, and dynamism vs. performance tradeoffs like sealing,
> > primary classes and limited types.
> I think these are overhyped features which have been adaquately
> addressed in Lisp/Scheme using either different implementations as
> needed, declarations, etc.

The point is that you can start writing code without caring about
performance. Once the design has settled, you can sprinkle some
adjectives here and there, and the code becomes fast, without having
to re-implement performance-critical code. I consider sealing to be a
good thing.

Andreas

Bruce Hoult

unread,
Dec 26, 2001, 12:18:37 AM12/26/01
to
In article <3C27C7BC...@quiotix.com>, Jeffrey Siegal
<j...@quiotix.com> wrote:

> Andreas Bogk wrote:
> > I suggest to take a look at Dylan. It's a pretty recent Lisp-like
> > language, and it's got a few things right (but on the other hand
> > omitted some features some people consider essential).
>
> I consider Lisp syntax (or something similarly elegant) to be
> essential. I suspect that many proponents of Dylan-like languages would
> consider it unacceptable. I strongly suspect there is no middle ground.

I can happily use either. Or paren-less prefix (Logo, ML). Or postfix
(PostScript, Forth). But even after much use of the others I find that
I do prefer "conventional" syntax.


> (Yes, I'm aware of Lisp-syntax Dylan, but I think there's a reason it
> got abandoned.)

The reason as I understand it is that no one could figure out how to
bidirectionally map macros between infix and prefix.

I'm not sure whether this is impossible or merely hard.

It's interesting that some of the more complex macros in Common Lisp
look uncommonly like the "infix" syntax in Dylan. e.g. the "loop"
macro, which is nearly identical to the Dylan "for" statement macro.
Thus it might be acceptable to the Lisp-syntax people to essentially
retain (nearly?) the same syntax for statement macros in both modes.
Function macros are easy to translate. That leaves Dylan's declaration
macros to think about.

Another solution might be to explicitly define both syntaxes when you
define a macro. More work, but then you don't define new syntax quite
as often as you define functions.

-- Bruce

Bruce Hoult

unread,
Dec 26, 2001, 12:26:16 AM12/26/01
to
In article <3C27D85C...@quiotix.com>, Jeffrey Siegal
<j...@quiotix.com> wrote:

Perhaps not a lot that is radical, but simply a lot of nice cleaning up.

- having a "let" where the scope is implicit (to the end of the current
progn) is a big win in unclutering code

- Dylan's ":=" and CL's "setf" are the same idea, but := is easier to
read for some people.

- same goes for "[]" vs "element()".

- why do aref and gethash in CL have opposite argument orders?


I think you get the point.

None of these (or other) items are critical in themselves, but I find
that put all together they provide a cleaner, easier to use (and
remember) language.

-- Bruce

Bruce Hoult

unread,
Dec 26, 2001, 12:53:26 AM12/26/01
to
In article <3C28500F...@quiotix.com>, Jeffrey Siegal
<j...@quiotix.com> wrote:

> Andreas Bogk wrote:
> > > What does Dylan have that Scheme + CLOS + "a collections library"
> > > doesn't have?
> >
> > That would be conditions, type annotations and a useful module/library
> > system.
>
> I agree about modules, although I don't really like the way Dylan uses
> multiple files to define a simple module. There should be a way of
> doing that in-line.

No one does. That was supposed to be just an interchange format, not
something that users had to deal with. That was the case in the Apple
IDE, where all the code was kept in a database.

We've had a bit of discussion recently on a way to put various modules
into the same source file. Nothing has been agreed yet, but in Gwydion
we have recently done a related thing in implementing a "single-file
mode" that lets you write small programs without a library or module
declaration at all, with a default set of imports. If/when your program
outgrows that you can always add the .lid file.

The ability to put imports/exports in the same file with code is
something we definitely plan for fairly soon.

-- Bruce

Bruce Hoult

unread,
Dec 26, 2001, 1:09:38 AM12/26/01
to
In article <okfadw8...@bellsouth.net>, David Rush
<ku...@bellsouth.net> wrote:

> > Ask yourself what you actually _like_ in Scheme. Chances are you can
> > get
> > it, better implemented and better understood, in any number of other
> > languages.
>
> Latently-typed first-class functions, and a single namespace,
> guaranteed O(0) tail calls. SML comes very close, but it's the only
> other serious player in this game.

There's also Dylan.

-- Bruce

Jeffrey Siegal

unread,
Dec 26, 2001, 9:38:23 AM12/26/01
to
Bruce Hoult wrote:

>>Andreas Bogk wrote:
>>
>>>I suggest to take a look at Dylan. It's a pretty recent Lisp-like
>>>language, and it's got a few things right (but on the other hand
>>>omitted some features some people consider essential).
>>>
>>I consider Lisp syntax (or something similarly elegant) to be
>>essential. I suspect that many proponents of Dylan-like languages would
>>consider it unacceptable. I strongly suspect there is no middle ground.
>
> I can happily use either. Or paren-less prefix (Logo, ML). Or postfix
> (PostScript, Forth). But even after much use of the others I find that
> I do prefer "conventional" syntax.

It isn't a question of using. It is a question of being able to define
new syntax without stretching or breaking the inherent limits of the
existing syntax. Lisp lives essentially forever in the world of
computer languages because it almost can't be outgrown. To the extent
that Dylan lives at all, it will still die when the world decides that
objects aren't that central to programming after all, and moves on to
some other model, or when someone comes up with a new syntactic
construct that it is incompatible with Dylan's syntax. Lisp will live on.


>>(Yes, I'm aware of Lisp-syntax Dylan, but I think there's a reason it
>>got abandoned.)
>
> The reason as I understand it is that no one could figure out how to
> bidirectionally map macros between infix and prefix.
>
> I'm not sure whether this is impossible or merely hard.

And the reason the decision was made to drop prefix rather than infix
when that happened was the overriding goal of trying to sell Dylan
alongside Java or C as a language for the great masses. (Which today
seems utterly absurd.)

Many smart people have observed that when you encounter a "hard" (if not
impossible) problem, you have already made a mistake somewhere back down
the road. Trying to "add" an infix syntax without recognizing that this
almost certainly means losing expressive power and generality was just
such a mistake.

> Another solution might be to explicitly define both syntaxes when you
> define a macro. More work, but then you don't define new syntax quite
> as often as you define functions.

That would be very error prone.

Jeffrey Siegal

unread,
Dec 26, 2001, 9:42:22 AM12/26/01
to
Andreas Bogk wrote:

>>doing that in-line. A CLOS-style object system does have type
>>annotations, at least at the method level (which is probably enough),
>>because they're necessary for dispatch.
>>
>
> Having type annotations for bindings gives the optimizer a lot of meat
> to work on.

I'm not so sure about that, given good type inference, and methods that
are kept reasonably small. In any case, it is a trivially small matter
to add type bindings to let statements one they exist for methods.

>>As for conditions, I prefer
>>passing condition handlers as explicit arguments. With proper tail
>>calls and limited use of call/cc to escape out of CPS, it works fine.
>
> I don't think so. Having to pass around handlers for all sorts of
> conditions is a nuisance. This is something CL and Dylan got right,
> IMHO.

Chocolate and vanilla. I would add that explicitly passing condition
handlers around is a bit like explicit typing, becuase it prevents you
from leaving conditions unhandled.

>>>Oh, and dynamism vs. performance tradeoffs like sealing,
>>>primary classes and limited types.
>>>
>>I think these are overhyped features which have been adaquately
>>addressed in Lisp/Scheme using either different implementations as
>>needed, declarations, etc.
>
> The point is that you can start writing code without caring about
> performance. Once the design has settled, you can sprinkle some
> adjectives here and there, and the code becomes fast, without having
> to re-implement performance-critical code. I consider sealing to be a
> good thing.

I do this in Scheme today, and I don't even sprinkle adjectives here and
there, by developing in a developer-friendly environment and then
switching to a highly-optimized block compiler for tuning and production.

Bruce Hoult

unread,
Dec 26, 2001, 11:05:12 AM12/26/01
to
In article <3C29E0DF...@quiotix.com>, Jeffrey Siegal
<j...@quiotix.com> wrote:

> Bruce Hoult wrote:
>
> >>Andreas Bogk wrote:
> >>
> >>>I suggest to take a look at Dylan. It's a pretty recent Lisp-like
> >>>language, and it's got a few things right (but on the other hand
> >>>omitted some features some people consider essential).
> >>>
> >>I consider Lisp syntax (or something similarly elegant) to be
> >>essential. I suspect that many proponents of Dylan-like languages would
> >>consider it unacceptable. I strongly suspect there is no middle ground.
> >
> > I can happily use either. Or paren-less prefix (Logo, ML). Or postfix
> > (PostScript, Forth). But even after much use of the others I find that
> > I do prefer "conventional" syntax.
>
> It isn't a question of using. It is a question of being able to define
> new syntax without stretching or breaking the inherent limits of the
> existing syntax. Lisp lives essentially forever in the world of
> computer languages because it almost can't be outgrown.

That's true only in the trivial sense that Lisp has no syntax, so Lisp
syntax can't be outgrown. Dylan has pretty much all the same semantics
as Lisp, and a malleable syntax.


> To the extent
> that Dylan lives at all, it will still die when the world decides that
> objects aren't that central to programming after all, and moves on to
> some other model, or when someone comes up with a new syntactic
> construct that it is incompatible with Dylan's syntax. Lisp will live on.

There is no such construct. If it can be fitted into Lisp's
functions-only notation then it can also be fitted into Dylan's
functions and function-macros. In Dylan in may well be *better* fitted
into statement macros, but that's an additional possibility, not a
restriction.


> >>(Yes, I'm aware of Lisp-syntax Dylan, but I think there's a reason it
> >>got abandoned.)
> >
> > The reason as I understand it is that no one could figure out how to
> > bidirectionally map macros between infix and prefix.
> >
> > I'm not sure whether this is impossible or merely hard.
>
> And the reason the decision was made to drop prefix rather than infix
> when that happened was the overriding goal of trying to sell Dylan
> alongside Java or C as a language for the great masses. (Which today
> seems utterly absurd.)

Why? Since that decision was made, the great masses have adopted both
Java and Perl, while Lisp has remained in the wilderness. I don't see
any reason to think that infix syntax is a *disadvantage* to the goal of
attaining popularity. The time may simply be not yet right. After all,
it is only just now that reasonably mature Dylan implementations are
becoming available.


> Many smart people have observed that when you encounter a "hard" (if not
> impossible) problem, you have already made a mistake somewhere back down
> the road.

Or no one had the correct "ah-ha" moment yet.


> Trying to "add" an infix syntax without recognizing that this
> almost certainly means losing expressive power and generality was just
> such a mistake.

In your opinion.


> > Another solution might be to explicitly define both syntaxes when you
> > define a macro. More work, but then you don't define new syntax quite
> > as often as you define functions.
>
> That would be very error prone.

A great many things in programming are error prone. In fact anything in
which it is impossible to make a mistake is almost certainly not
powerful enough to be useful. It is reasonable to expect that
programmers have *some* skill. Also, even if a compiler can't
reasonably translate an infix macro to a prefix macro (or the reverse),
it seems entirely reasonable for it to apply some consistency checks to
two such macros supplied by a human.

-- Bruce

Jeffrey Siegal

unread,
Dec 26, 2001, 12:07:40 PM12/26/01
to
Bruce Hoult wrote:
> That's true only in the trivial sense that Lisp has no syntax, so Lisp
> syntax can't be outgrown.

Hardly. It just has a syntax with a very simple and powerful basic
construction rule. However, on top of that construction rule,
enormously powerful syntactic abstractions can be (and are) built. What
Algol-like languages lack is the basic construction rule which allows
you to decompose the syntax down into elemental componets. That makes
any macro system either enormously complex or lacking in power, or both.

Consider, for example, what low-level Lisp macros would look like in an
Algol-like language. They can be done but the result is enormously
complex (and also fragile; if the language syntax is extended, macros
written that way will likely break).

> There is no such construct. If it can be fitted into Lisp's
> functions-only notation then it can also be fitted into Dylan's
> functions and function-macros.

Of course it can, just as you could write a Lisp interpreter in Dylan
and use that. But at some point it becomes language-abuse, not
language-use, becuause the facilities the language provides to help you
end up either being in the way, or being useless warts. I can tell you
from experience that trying to do extremely complex things with
function-style macros in an Algol-like language is far, far worse than
doing the same thing in Lisp, since such things are a natural extension
of the Lisp syntax but stronly conflict with the flavor of an
Algol-style langauge. Yes, it can be done that way, but it might as
well not be possible because no one will want to use it.

> > And the reason the decision was made to drop prefix rather than infix
> > when that happened was the overriding goal of trying to sell Dylan
> > alongside Java or C as a language for the great masses. (Which today
> > seems utterly absurd.)
>
> Why?

I didn't mean the decision was absurd at the time, just that the
possiblity of Dylan being sold to the great masses today is absurd.
Dylan is a useful niche language, which is all it will ever be. As a
niche language, though, you don't need to sell it with a candy-coated
syntax. I might be using it today if the Lisp syntax had been retained,
but I have no interest whatsoever in an Algol-syntax niche langauge. If
I'm going to use such a langauge, it is going to at least be a
mainstream one with all of the benefits that acrue from that status
(i.e., all things considered I'd rather use Java, and I do, than Dylan,
despite recognizing that Dylan is a much nicer language).

> Since that decision was made, the great masses have adopted both
> Java and Perl, while Lisp has remained in the wilderness. I don't see
> any reason to think that infix syntax is a *disadvantage* to the goal of
> attaining popularity.

I wasn't suggesting that.

> The time may simply be not yet right. After all,
> it is only just now that reasonably mature Dylan implementations are
> becoming available.

With all due respect, I think you are dreaming, and I think some honest
self-reflection would confirm that.

> > Many smart people have observed that when you encounter a "hard" (if not
> > impossible) problem, you have already made a mistake somewhere back down
> > the road.
>
> Or no one had the correct "ah-ha" moment yet.

Taking a path which requires an as-yet-unknown "ah ha" to suceed is a
design error. It is those moments which make new paths feasible. Blind
leaps occasionally do lead there (I'm a big fan of evoluationary
learning), but when they don't, you should be willing to accept that the
leap was a mistake and backtrack.

> > Trying to "add" an infix syntax without recognizing that this
> > almost certainly means losing expressive power and generality was just
> > such a mistake.
>
> In your opinion.

Absolutely true.

> > > Another solution might be to explicitly define both syntaxes when you
> > > define a macro. More work, but then you don't define new syntax quite
> > > as often as you define functions.
> >
> > That would be very error prone.
>
> A great many things in programming are error prone. In fact anything in
> which it is impossible to make a mistake is almost certainly not
> powerful enough to be useful. It is reasonable to expect that
> programmers have *some* skill.

Requiring a programmer to maintain two distinct pieces of code which are
supposed to have the same effect is something that experience shows to
be extremely difficult and error prone. As development practices go,
such an approach is best avoided.

Francois-Rene Rideau

unread,
Dec 26, 2001, 2:49:26 PM12/26/01
to
Jeffrey Siegal <j...@quiotix.com> writes Re: New Lisp ?

> Consider, for example, what low-level Lisp macros would look like in an
> Algol-like language. They can be done but the result is enormously
> complex (and also fragile; if the language syntax is extended, macros
> written that way will likely break).
I wonder what you think or someone who knows them as well as LISP macros
thinks of CamlP4 or of parse-tree filtering in Erlang.
These may not be as seamlessly integrated in their mother language as are
LISP macros, but they look very promising.

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
[ TUNES project for a Free Reflective Computing System | http://tunes.org ]
A language that doesn't affect the way you think about programming,
is not worth knowing. -- Alan Perlis

Jeffrey Siegal

unread,
Dec 26, 2001, 3:33:23 PM12/26/01
to
Francois-Rene Rideau wrote:

>>Consider, for example, what low-level Lisp macros would look like in an
>>Algol-like language. They can be done but the result is enormously
>>complex (and also fragile; if the language syntax is extended, macros
>>written that way will likely break).
>>
> I wonder what you think or someone who knows them as well as LISP macros
> thinks of CamlP4 or of parse-tree filtering in Erlang.

I have not looked at them before so I am not very familar with them. I
looked quickly at CamlP4 and it looked very similar to what I've seen
before in terms of attempts to do this. In particular, fairly complex,
and requiring the programmer to understand quite a bit about parsing
theory and practice (an interesting field, but not one that every
programmer necessarily knows about or wants to know about).

Anyone who can not see that the complexity of such things is a strong
argument in favor of a simple Lisp-like syntax[*] is blind or
prejudiced. Perhaps not an overriding argument that would cause one to
use a Lisp-syntax despite other issues, but still...

[*] By "Lisp-like" syntax I mean a syntax that can be constructed and
decomposed using a few simple, easy-to-understand rules. It doesn't
neceessarily need to be Lisp-syntax itself. For example, it might use
indentation rather than parenthesis to indicate nesting. Or it might be
something else. But whatever it is, it should reduce to some sort of
logical and simple internal form, not some mostly random collection of
Algol-like constructs that exist largely the result of a string of
historical accidents.

Feuer

unread,
Dec 26, 2001, 9:20:28 PM12/26/01
to
Bruce Hoult wrote:

> In article <3C27C7BC...@quiotix.com>, Jeffrey Siegal
> <j...@quiotix.com> wrote:

>
> > I consider Lisp syntax (or something similarly elegant) to be
> > essential. I suspect that many proponents of Dylan-like languages would
> > consider it unacceptable. I strongly suspect there is no middle ground.
>
> I can happily use either. Or paren-less prefix (Logo, ML). Or postfix
> (PostScript, Forth). But even after much use of the others I find that
> I do prefer "conventional" syntax.

The advantage of a language with significant syntax is that it allows the
programmer to quickly and easily write certain kinds of code. For example, ML
and Haskell syntax make it easy to write curried functions and function
applications, as well as infix operators. It would be quite annoying to call
a simple function by saying
(((foldl f) h) lst)

Infix is probably less important, but is convenient.

Ray Racine

unread,
Dec 26, 2001, 7:16:17 PM12/26/01
to
In article <bruce-C0C4DB....@news.paradise.net.nz>, "Bruce


> In article <3C28500F...@quiotix.com>, Jeffrey Siegal
> <j...@quiotix.com> wrote:
>
>> Andreas Bogk wrote:
>> > > What does Dylan have that Scheme + CLOS + "a collections library"
>> > > doesn't have?

>> > Hoult" <br...@hoult.org> wrote:
>> > That would be conditions, type annotations and a useful
>> > module/library system.

The solution to this whole debate is of course Schylan.
If one ignores the lack of S-Expressions Dylan is a far, far better
Scheme then Scheme. Its a far far better Scheme implementation then
any of the others.

1. A robust CLOS.
2. Conditions
3. Type annotations are optional.
4. A module/library system.
5. Efficient compiler.
6 Macro system.
7. Collections
8. ???

If course all those features can be found in the various Scheme flavors,
just not in any one of them.

If Dylan was S-Exp based it would be immediately become the
dominant Scheme (variant) implementation.

Along with receiving great "the latest new thing" press.
"Lisp is back from the dead. List Lives!! Tanned rested and ready ..."

Hordes of hackers will embark upon a new OS written in Schylan, SchyLanux.

As is Dylan will always be a niche alternative to Java. A Java wanna be.
It doesn't matter that Java is a toy compared to Dylan. The great
unwashed don't read feature comparision lists.

The solution then is as they say intuitively obvious to the casual
observer. Put back S-expr into Dylan.

Scheme x Dylan => Schylan

Ray

Bruce Hoult

unread,
Dec 26, 2001, 7:20:19 PM12/26/01
to
In article <3C2A03DC...@quiotix.com>, Jeffrey Siegal
<j...@quiotix.com> wrote:

> Bruce Hoult wrote:
> > That's true only in the trivial sense that Lisp has no syntax, so Lisp
> > syntax can't be outgrown.
>
> Hardly. It just has a syntax with a very simple and powerful basic
> construction rule. However, on top of that construction rule,
> enormously powerful syntactic abstractions can be (and are) built. What
> Algol-like languages lack is the basic construction rule which allows
> you to decompose the syntax down into elemental componets. That makes
> any macro system either enormously complex or lacking in power, or both.
>
> Consider, for example, what low-level Lisp macros would look like in an
> Algol-like language. They can be done but the result is enormously
> complex (and also fragile; if the language syntax is extended, macros
> written that way will likely break).

There are examples of the same thing happening in reverse. When macros
get sufficiently complex and have enough combinations of different
possibilities, it becomes too difficult to follow a purely S-expresion
syntax. Consider the example of the Dylan "for" macro. How would you
map all that functionality and all those options onto an S-expression
syntax? Well, we can look at what is done in Common Lisp with the
"loop" macro. The same idea, very nearly exactly the same options. And
we find that in fact it does *not* use S-expression syntax, but instead
makes a little infix language that ends up very similar to that part of
Dylan.

As you say: "at some point it becomes language-abuse, not language-use".

Now, I happen to think that the "loop" macro is a *good* thing about
Common Lisp, but:

1) building such things yourself isn't well supported in CL (it is in
Dylan)

2) I find that I actually *prefer* this sort of thing to have infix
syntax, and prefer all loops and other control structures to use it. If
nothing else, it means that you know immediately whether you're looking
at a standard function application or a special form. That's what Dylan
does.


> > There is no such construct. If it can be fitted into Lisp's
> > functions-only notation then it can also be fitted into Dylan's
> > functions and function-macros.
>
> Of course it can, just as you could write a Lisp interpreter in Dylan
> and use that. But at some point it becomes language-abuse, not
> language-use, becuause the facilities the language provides to help you
> end up either being in the way, or being useless warts. I can tell you
> from experience that trying to do extremely complex things with
> function-style macros in an Algol-like language is far, far worse than
> doing the same thing in Lisp

Which algol-like language?


> I didn't mean the decision was absurd at the time, just that the
> possiblity of Dylan being sold to the great masses today is absurd.
> Dylan is a useful niche language, which is all it will ever be.

Presumably, then, you feel the same way about Lisp?


> As a niche language, though, you don't need to sell it with a
> candy-coated syntax. I might be using it today if the Lisp syntax
> had been retained, but I have no interest whatsoever in an
> Algol-syntax niche langauge.

*You* may not, but not everyone feels that way. Apart from Dylan, there
are people out there using OCaml, Haskell and a bunch of lesser-known
niche languages with Algol-like syntaxes. Not all of them intend to
remain niche languages.


> If I'm going to use such a langauge, it is going to at least be a
> mainstream one with all of the benefits that acrue from that status
> (i.e., all things considered I'd rather use Java, and I do, than Dylan,
> despite recognizing that Dylan is a much nicer language).

Half a dozen years ago Java wasn't mainstream. A dozen years ago (when
I started using it) C++ wasn't mainstream. The same goes for Perl
before the WWW happened. Plenty of languages have made the transition
from niche to mainstream in the past, and there is every reason to think
that plenty more will in the future. C++ and Perl and Java are not the
last word in language design for the masses.


> > The time may simply be not yet right. After all, it is only just
> > now that reasonably mature Dylan implementations are becoming
> > available.
>
> With all due respect, I think you are dreaming, and I think some honest
> self-reflection would confirm that.

Dreaming in what respect? Are you saying that reasonably mature Dylan
implementations are not yet available? Or that they have been for some
time? Or something else?

I'm certainly under no illusions that "a reasonably mature
implementation" is sufficient for market success. But it's surely
necessary.


> > > Many smart people have observed that when you encounter a "hard"
> > > (if not impossible) problem, you have already made a mistake
> > > somewhere back down the road.
> >
> > Or no one had the correct "ah-ha" moment yet.
>
> Taking a path which requires an as-yet-unknown "ah ha" to suceed is a
> design error.

I agree. And that path -- attempting to support both infx and prefix
syntaxes -- has *not* been taken. A clean switch was made from one to
the other.


> > > > Another solution might be to explicitly define both syntaxes
> > > > when you define a macro. More work, but then you don't define
> > > > new syntax quite as often as you define functions.
> > >
> > > That would be very error prone.
> >
> > A great many things in programming are error prone. In fact
> > anything in which it is impossible to make a mistake is almost
> > certainly not powerful enough to be useful. It is reasonable to
> > expect that programmers have *some* skill.
>
> Requiring a programmer to maintain two distinct pieces of code which are
> supposed to have the same effect is something that experience shows to
> be extremely difficult and error prone. As development practices go,
> such an approach is best avoided.

Mainstream programmers are expected to keep functions and prototypes in
synch. They are expected to maintain quite complex invariants over
large bodies of code, usually without benefit of anything more powerful
than "assert". They are expected to declare the type of a variable in
one place and then use it appropriately in other places. They are
expected to make sure that variables are correctly initialized over all
execution paths. They are expected to explicitly free dynamic memory at
those points -- and only those points -- where it is no longer needed.

Compared to some of those, correctly setting up alternate syntaxes in
the odd macro definition is hardly onerous or error-prone. And it might
be totally optional -- needed *only* if you want to use both. Most
mainstream programmers would presumably be satisfied with the Algol-like
syntax in the first place.

-- Bruce

Bruce Hoult

unread,
Dec 26, 2001, 7:27:15 PM12/26/01
to
In article <3C2A856C...@his.com>, Feuer <fe...@his.com> wrote:

> Bruce Hoult wrote:
> > I can happily use either. Or paren-less prefix (Logo, ML). Or postfix
> > (PostScript, Forth). But even after much use of the others I find that
> > I do prefer "conventional" syntax.
>
> The advantage of a language with significant syntax is that it allows
> the programmer to quickly and easily write certain kinds of code. For
> example, ML and Haskell syntax make it easy to write curried functions
> and function applications, as well as infix operators. It would be
> quite annoying to call a simple function by saying (((foldl f) h) lst)

That's true, but it seems awfully arbitrary.

How often do you find that you need to put function arguments in an
uncomfortable order so that the automatic currying works out right?

-- Bruce

Kaz Kylheku

unread,
Dec 26, 2001, 8:25:57 PM12/26/01
to
In article <87zo45sq...@Samaris.tunes.org>, Francois-Rene Rideau wrote:
>Jeffrey Siegal <j...@quiotix.com> writes Re: New Lisp ?
>> Consider, for example, what low-level Lisp macros would look like in an
>> Algol-like language. They can be done but the result is enormously
>> complex (and also fragile; if the language syntax is extended, macros
>> written that way will likely break).
>I wonder what you think or someone who knows them as well as LISP macros
>thinks of CamlP4 or of parse-tree filtering in Erlang.

Once you introduce parse tree filtering, don't you think that users will
eventually want a way to specify any arbitrary parse tree, not just ones
that correspond to the few shapes determined by a hardcoded parser?

Then you are looking at some bracketed notation.

Coby Beck

unread,
Dec 26, 2001, 8:39:06 PM12/26/01
to

"Bruce Hoult" <br...@hoult.org> wrote in message
news:bruce-9D1859....@news.paradise.net.nz...

>
> - why do aref and gethash in CL have opposite argument orders?
>
>

aref is also opposite to nth. I think one "justification" if not "reason" for
this is the need to accomodate multiple indices in aref. For nth, the second
argument is the list but for aref, if not the first, it could be the 2nd,
3rd...etc..depending on how many array dimensions you have.

--
Coby
(remove #\space "coby . beck @ opentechgroup . com")


David Rush

unread,
Dec 26, 2001, 9:08:03 PM12/26/01
to
Andreas Bogk <and...@andreas.org> writes:

> Jeffrey Siegal <j...@quiotix.com> writes:
> > As for conditions, I prefer
> > passing condition handlers as explicit arguments. With proper tail
> > calls and limited use of call/cc to escape out of CPS, it works fine.
>
> I don't think so. Having to pass around handlers for all sorts of
> conditions is a nuisance. This is something CL and Dylan got right,
> IMHO.

Wel I've not written any large reactive systems using CPS for
condition-handling, but it certainly seems to work well in my
data-mining code. As things stand today, I'd probably not choose
Scheme for a large GUI application, although I'm cooking up ideas to
try out in PLT Scheme just to see if there GUI support is as good as
it looks. Maybe sometime in this millenium I'll get around to it.

> > > Oh, and dynamism vs. performance tradeoffs like sealing,

Huh? What is this feature?

> > I think these are overhyped features which have been adaquately
> > addressed in Lisp/Scheme using either different implementations as
> > needed, declarations, etc.
>
> The point is that you can start writing code without caring about
> performance.

Surely you *don't* really mean this. Big-O issues will jump up and get
you if you don't think about them.

> Once the design has settled, you can sprinkle some
> adjectives here and there, and the code becomes fast, without having
> to re-implement performance-critical code. I consider sealing to be a
> good thing.

Do you not also get the same benefits if you develop using good
functional abstractions?

david rush
--
The beginning of wisdom for a [software engineer] is to recognize the
difference between getting a program to work, and getting it right.
-- M A Jackson, 1975

David Rush

unread,
Dec 26, 2001, 9:24:50 PM12/26/01
to
Bruce Hoult <br...@hoult.org> writes:
> In article <3C2A856C...@his.com>, Feuer <fe...@his.com> wrote:
> > The advantage of a language with significant syntax is that it allows
> > the programmer to quickly and easily write certain kinds of code. For
> > example, ML and Haskell syntax make it easy to write curried functions
> > and function applications, as well as infix operators. It would be
> > quite annoying to call a simple function by saying (((foldl f) h) lst)
>
> How often do you find that you need to put function arguments in an
> uncomfortable order so that the automatic currying works out right?

Well comparing my experiences from 5 years ago programming constraint
solvers and scheduling systems in SML to the present where I'm data
mining in Scheme, I'd say I encounter about equal hassle in both
systems w/rt curried functions and partial applications. I use a lot
more HO functions in Scheme, at least partly to simulate SML
functors, and I get mildly annoyed at the number of explicit lambdas I
need to include. OTOH, I spent a fair amount of time in SML fretting
over the most `natural' partial application order (not to mention the
whole tuple vs curried API issue).

On the whole I prefer Scheme, but I might find that I also like SML
better (not that I ever *dis*liked it) now that my fluency in the
functional paradigm has grown.

Just $0.02.

david rush
--
From the start...the flute has been associated with pure (some might
say impure) energy. Its sound releases something naturally untamed, as
if a squirrel were let loose in a church." --Seamus Heaney

Jeffrey Siegal

unread,
Dec 26, 2001, 9:51:46 PM12/26/01
to
Bruce Hoult wrote:
> There are examples of the same thing happening in reverse. When macros
> get sufficiently complex and have enough combinations of different
> possibilities, it becomes too difficult to follow a purely S-expresion
> syntax.

Not in my experience. YMMV.

> Consider the example of the Dylan "for" macro. How would you
> map all that functionality and all those options onto an S-expression
> syntax?

I haven't looked closely at the Dylan for macro, but I suspect by not
including all that functionality into a single construct.

> > > There is no such construct. If it can be fitted into Lisp's
> > > functions-only notation then it can also be fitted into Dylan's
> > > functions and function-macros.
> >
> > Of course it can, just as you could write a Lisp interpreter in Dylan
> > and use that. But at some point it becomes language-abuse, not
> > language-use, becuause the facilities the language provides to help you
> > end up either being in the way, or being useless warts. I can tell you
> > from experience that trying to do extremely complex things with
> > function-style macros in an Algol-like language is far, far worse than
> > doing the same thing in Lisp
>
> Which algol-like language?

C (preprocessor macros) and Java (a proprietary preprocessor). Other
people have done similar things with C++ templates and the result is
similarly unwieldy.

> > I didn't mean the decision was absurd at the time, just that the
> > possiblity of Dylan being sold to the great masses today is absurd.
> > Dylan is a useful niche language, which is all it will ever be.
>
> Presumably, then, you feel the same way about Lisp?

Absolutely.



> > If I'm going to use such a langauge, it is going to at least be a
> > mainstream one with all of the benefits that acrue from that status
> > (i.e., all things considered I'd rather use Java, and I do, than Dylan,
> > despite recognizing that Dylan is a much nicer language).
>
> Half a dozen years ago Java wasn't mainstream. A dozen years ago (when
> I started using it) C++ wasn't mainstream. The same goes for Perl
> before the WWW happened. Plenty of languages have made the transition
> from niche to mainstream in the past, and there is every reason to think
> that plenty more will in the future. C++ and Perl and Java are not the
> last word in language design for the masses.

That's all true, but for every language that "breaks out" there are a
zillion that don't, and those that break out generally have a big
promoter, though there are occasional exceptions, on the order of
perhaps one per decade. Not unlike pop artists.

> > > The time may simply be not yet right. After all, it is only just
> > > now that reasonably mature Dylan implementations are becoming
> > > available.
> >
> > With all due respect, I think you are dreaming, and I think some honest
> > self-reflection would confirm that.
>
> Dreaming in what respect? Are you saying that reasonably mature Dylan
> implementations are not yet available? Or that they have been for some
> time? Or something else?

That Dylan is going to go mainstream when "the time is right", and also
about reasonably mature implementations becoming available "just now."
I consider Harlequin's product to have been "reasonably mature" some
time ago.

Dylan will almost certainly never break into the mainstream without a
big promoter. The opportunity was largely lost when Apple dropped it.
Perhaps with Apple's backing it could have given Java a good run, but
without it, no way.

Bruce Hoult

unread,
Dec 26, 2001, 11:14:40 PM12/26/01
to
In article <3C2A8CC2...@quiotix.com>, Jeffrey Siegal
<j...@quiotix.com> wrote:

> Bruce Hoult wrote:
> > Consider the example of the Dylan "for" macro. How would you
> > map all that functionality and all those options onto an S-expression
> > syntax?
>
> I haven't looked closely at the Dylan for macro, but I suspect by not
> including all that functionality into a single construct.

Which wouldn't be very satisfactory.

Both CL's "loop" and Dylan's "for" are basically similar to "do" in
Scheme, in that they allow you to iterate with a number of variables
updated in parallel. But unlike Scheme they allow not just "var = init
then update-expression", but also automatic stepping through numeric
ranges ("var from foo to bar by baz") and multiple termination tests.
CL allows stepping through lists and hashes, Dylan allows stepping
through arbitrary collections. CL allows collecting expressions into a
result list (or summing them).

It's hard to see how to decompose this functionality into different
constructs while still allowing different loop variables to
simultaneously be controlled in different ways. Which is very desirable.

On the other hand, Scheme's "do" is already near the limits of
S-expression comprehensibility. Trying to extend it to do what Dylan's
"for" or CL's "loop" do would I think take it well past.


> > > I can tell you
> > > from experience that trying to do extremely complex things with
> > > function-style macros in an Algol-like language is far, far worse
> > > than doing the same thing in Lisp
> >
> > Which algol-like language?
>
> C (preprocessor macros) and Java (a proprietary preprocessor). Other
> people have done similar things with C++ templates and the result is
> similarly unwieldy.

I agree in each of those cases.

None of those language syntaxes (well, basically the same one) were
designed to be amenable to sophisticated macro processing. Dylan's
*was*. All the declarations and control structures were designed from
the outset to be implemented as macros. And in d2c, at least, they are.


> > > I didn't mean the decision was absurd at the time, just that the
> > > possiblity of Dylan being sold to the great masses today is absurd.
> > > Dylan is a useful niche language, which is all it will ever be.
> >
> > Presumably, then, you feel the same way about Lisp?
>
> Absolutely.

Fair enough then.


> > > If I'm going to use such a langauge, it is going to at least be a
> > > mainstream one with all of the benefits that acrue from that status
> > > (i.e., all things considered I'd rather use Java, and I do, than
> > > Dylan,
> > > despite recognizing that Dylan is a much nicer language).
> >
> > Half a dozen years ago Java wasn't mainstream. A dozen years ago (when
> > I started using it) C++ wasn't mainstream. The same goes for Perl
> > before the WWW happened. Plenty of languages have made the transition
> > from niche to mainstream in the past, and there is every reason to
> > think
> > that plenty more will in the future. C++ and Perl and Java are not the
> > last word in language design for the masses.
>
> That's all true, but for every language that "breaks out" there are a
> zillion that don't,

Sure.

> and those that break out generally have a big promoter

Actually, that appears to be the exception. Java had huge promotion. C
and C++ might have been from AT&T but they can't really be said to have
*promoted* them. The authors pushed them personally, just as Larry Wall
did with Perl and Guido did with Python.


> > > > The time may simply be not yet right. After all, it is only just
> > > > now that reasonably mature Dylan implementations are becoming
> > > > available.
> > >
> > > With all due respect, I think you are dreaming, and I think some
> > > honest self-reflection would confirm that.
> >
> > Dreaming in what respect? Are you saying that reasonably mature Dylan
> > implementations are not yet available? Or that they have been for some
> > time? Or something else?
>
> That Dylan is going to go mainstream when "the time is right",

I certianly wouldn't put it as strongly as "is going to". "Might have a
shot" is more like it.


> and also
> about reasonably mature implementations becoming available "just now."
> I consider Harlequin's product to have been "reasonably mature" some
> time ago.

Yes, but it's only been on one OS -- and technical people's least
favourite one, at that.

They now have a Linux beta out, which is good.


Gwydion is on probably every interesting platform: Un*x, MacOS, MacOS X,
Windows (Cywwin), BeOS. But it's not as mature as Harlequin/Fun-O and
won't be in a position to even attempt to "break out" for a year or two
yet at the curren rate.


> Dylan will almost certainly never break into the mainstream without a
> big promoter. The opportunity was largely lost when Apple dropped it.

That was a sad day, yes. And it's taking a while to recover from. The
good news is that 1) the implementations are getting there, and 2) most
mainstream people have never even heard of it, so when we're ready it'll
be "new" to them, not recycled.


> Perhaps with Apple's backing it could have given Java a good run, but
> without it, no way.

It's a long shot, for sure. I think that probably OCaml has a better
shot at it. Maybe Erlang, with its big backer. Both those are probably
a bit cryptic for the average punter though. We get people turning up
on the Gwydion mailing list saying things like "I never saw Dylan before
but I just browsed through [the compiler | your ICFP entry] and I COULD
ACTUALLY UNDERSTAND IT".

-- Bruce

It is loading more messages.
0 new messages