Why lisp failed in the marketplace

826 views
Skip to first unread message

George J. Carrette

unread,
Feb 6, 1997, 3:00:00 AM2/6/97
to

There were toy implementation of C available and that didn't seem to hurt
C.
So what really happened with LISP?

Lets get real, and keep history in mind. In the 1980's companies
around the world, but especially in the US, invested hundreds of millions
of dollars in commercial lisp systems. Maybe even billions when you
consider all the salaries of all the people who purchased and worked
with these commercial systems.

Yet today, how many companies with products for sale which were implemented
in LISP actually make use of commercial LISP products? Perhaps some,
but I think that the situation at Macsyma Inc, and Gensym are more typical.
Both companies essentially maintain their own lisp systems in-house. And
for
want of a useful ANDF(architecture neutral distribution format) these
implementations
target C, not assembler. Other companies make use of interpreters in
commercial products.

Why is this?

1. All of the lisp hardware vendors spent tens of millions of dollars
telling the world that special purpose hardware was required, that
using lisp without it was impractical, and that anybody who tried to
do otherwise was some kind of backward turkey bound to lose.
Shops who purchased these machines spent a huge about of money
and put a lot on the line in order to be state of the art.
2. Symbolics spent millions telling people that lisp wasn't portable
between different lisp machine vendors, and anyway who would want
to bother, since most shops know that they already spend so much
time maintaining their code to keep up with new release of Symbolics
operating system that real people will never get real work done
if they try to be portable at the same time.
3. Along comes LUCID, with millions to spend on telling people that
special hardware is not needed, however LISP is too complicated to
be properly implemented in-house by the major hardware and operating
system vendors, and even if you don't think so we will go around you
and help convince your customers that you aren't doing such a good job
as we would do.

-gjc


Henry Baker

unread,
Feb 12, 1997, 3:00:00 AM2/12/97
to

In article <01bc13dc$cfaa2b20$0f02...@gjchome.nis.newscorp.com>, "George
J. Carrette" <g...@delphi.com> wrote:

> 1. All of the lisp hardware vendors spent tens of millions of dollars
> telling the world that special purpose hardware was required, that
> using lisp without it was impractical, and that anybody who tried to
> do otherwise was some kind of backward turkey bound to lose.
> Shops who purchased these machines spent a huge about of money
> and put a lot on the line in order to be state of the art.

This is too broad a brush-stroke. There were some within Symbolics that
pushed hard for a non-proprietary HW solution. The most vocal was
Howard Cannon, who worked hard to develop an 80x86 capability.

Also, with current large address spaces, large RAMs, large disks, and
very high performance chips, it is easy to look backwards and criticize
'Lisp HW'. Keep in mind that with only 2-8 Mbytes of memory in the early
1980's, these machines had spectacular capabilities and performance. Rather
than 'ride the wave' of Moore's Law, however, they just fell off the surfboard
somewhere about 1986.

Jeffrey B. Siegal

unread,
Feb 13, 1997, 3:00:00 AM2/13/97
to

In article <hbaker-1202...@10.0.2.1>, hba...@netcom.com (Henry

Baker) wrote:
> Also, with current large address spaces, large RAMs, large disks, and
> very high performance chips, it is easy to look backwards and criticize
> 'Lisp HW'. Keep in mind that with only 2-8 Mbytes of memory in the early
> 1980's, these machines had spectacular capabilities and performance. Rather
> than 'ride the wave' of Moore's Law, however, they just fell off the surfboard
> somewhere about 1986.

Perhaps many of you "old timers" were too close to the forest/trees at the
time, or maybe you just had a different opinion at the time (and some even
now).

However, in 1986, I took a Computer Systems Architecture course (don't
recall the number) as an undergraduate at MIT , and one of the case
studies was basically why Lisp machines were a "Non Winning" solution. In
hindsight, the purpose of these case studies was to give the students
(future engineers) the opportunity to learn from the mistakes made in the
past and avoid repeating them in the future (and, occasionally, learn from
correct decisions). In 1986, the mistake made by the Lisp industry in
stubbornly sticking to proprietary architectures was readily apparent.

At the time, Symbolics had just announced a brand new, lower cost (but
still proprietary) system, and the consensus was that they were basically
wasting time and money on that approach.

--
Jeffrey B. Siegal
Quiotix Corporation
+1 415 782-6012
http://www.quiotix.com

Rainer Joswig

unread,
Feb 13, 1997, 3:00:00 AM2/13/97
to

In article <hbaker-1202...@10.0.2.1>, hba...@netcom.com (Henry
Baker) wrote:

> In article <01bc13dc$cfaa2b20$0f02...@gjchome.nis.newscorp.com>, "George
> J. Carrette" <g...@delphi.com> wrote:
>
> > 1. All of the lisp hardware vendors spent tens of millions of dollars
> > telling the world that special purpose hardware was required, that
> > using lisp without it was impractical, and that anybody who tried to
> > do otherwise was some kind of backward turkey bound to lose.
> > Shops who purchased these machines spent a huge about of money
> > and put a lot on the line in order to be state of the art.
>
> This is too broad a brush-stroke. There were some within Symbolics that
> pushed hard for a non-proprietary HW solution. The most vocal was
> Howard Cannon, who worked hard to develop an 80x86 capability.
>

> Also, with current large address spaces, large RAMs, large disks, and
> very high performance chips, it is easy to look backwards and criticize
> 'Lisp HW'. Keep in mind that with only 2-8 Mbytes of memory in the early
> 1980's, these machines had spectacular capabilities and performance. Rather
> than 'ride the wave' of Moore's Law, however, they just fell off the surfboard
> somewhere about 1986.

Redoing the Ivory in some modern chip process might be spectacular.

Still, I'm quite happy with MCL right now.

--
http://www.lavielle.com/~joswig/

Barry Margolin

unread,
Feb 13, 1997, 3:00:00 AM2/13/97
to

In article <joswig-ya0231800...@news.lavielle.com>,

Rainer Joswig <jos...@lavielle.com> wrote:
>Redoing the Ivory in some modern chip process might be spectacular.

It might, but it would run into the same marketplace issues that the
original Ivory did. Basically, it's virtually impossible for a small
company to succeed with proprietary hardware, since they can't get the
economies of scale that the big guys could. This is also why Thinking
Machines (my former employer) eventually had to give up on being a hardware
vendor: they simply couldn't compete in price wars with Intel and IBM MPP
systems; so they switched to developing software that could be ported to
other MPP's or networks of workstations.
--
Barry Margolin
BBN Corporation, Cambridge, MA
bar...@bbnplanet.com
(BBN customers, call (800) 632-7638 option 1 for support)

William Paul Vrotney

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

In article <5e09eo$j...@tools.bbnplanet.com> bar...@tools.bbnplanet.com (Barry Margolin) writes:
>
> It might, but it would run into the same marketplace issues that the
> original Ivory did. Basically, it's virtually impossible for a small
> company to succeed with proprietary hardware, since they can't get the
> economies of scale that the big guys could. This is also why Thinking
> Machines (my former employer) eventually had to give up on being a hardware
> vendor: they simply couldn't compete in price wars with Intel and IBM MPP
> systems; so they switched to developing software that could be ported to
> other MPP's or networks of workstations.

True, but this principle has nothing to do with proprietary or Lisp based
hardware. Motorola might have the same problem if Macs start using Intel as
well.

--

William P. Vrotney - vro...@netcom.com

Henry Baker

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

In article <jbs-130297...@dial-sf1-5.iway.aimnet.com>,

j...@quiotix.com (Jeffrey B. Siegal) wrote:

> Perhaps many of you "old timers" were too close to the forest/trees at the
> time, or maybe you just had a different opinion at the time (and some even
> now).

If I'm an 'old timer' now, I'd hate to think what I'll be called in another
10 years!

I like to think I can still see 'trees' where most others can only see
'vectors' and 'arrays'. (e.g., objects v. 'bitmaps') ;-) ;-) ;-)

> However, in 1986, I took a Computer Systems Architecture course (don't
> recall the number) as an undergraduate at MIT , and one of the case
> studies was basically why Lisp machines were a "Non Winning" solution. In
> hindsight, the purpose of these case studies was to give the students
> (future engineers) the opportunity to learn from the mistakes made in the
> past and avoid repeating them in the future (and, occasionally, learn from
> correct decisions). In 1986, the mistake made by the Lisp industry in
> stubbornly sticking to proprietary architectures was readily apparent.

Depends upon what you mean by 'proprietary'. If 'proprietary' = 'low volume',
I'll agree with you, but if 'proprietary' means 'optimized for C', I'll pass.
There was one point where Steve Jobs would have considered putting a Lisp
chip into every single Macintosh, but Symbolics was several years too
late for that. If Symbolics had been ready at the appropriate time, its
'proprietary' chip would have had high volume, which might have changed
the course of computing. If you want to know why Symbolics was late with
their chip, you might ask its board members why they didn't invest in it...

Rainer Joswig

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

In article <jbs-130297...@dial-sf1-5.iway.aimnet.com>,
j...@quiotix.com (Jeffrey B. Siegal) wrote:

> stubbornly sticking to proprietary architectures was readily apparent.

Sorry, but the word "proprietary" nowadays is at best
meaningless. It has zero content due to misuse
of various marketing guys. Isn't Java proprietary?
How open is Unix? Solaris? AIX? Is the
Intel architecture "open"?

If Symbolics develops an architecture, it is proprietary?
If SUN does the same - it is not?
If Symbolics ships most of the source, it is proprietary?
If SUN does not - it is not?
...

Rainer Joswig - Puzzled

--
http://www.lavielle.com/~joswig/

Jeffrey B. Siegal

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

In article <joswig-ya0231800...@news.lavielle.com>,

jos...@lavielle.com (Rainer Joswig) wrote:
> If Symbolics develops an architecture, it is proprietary?
> If SUN does the same - it is not?
> If Symbolics ships most of the source, it is proprietary?
> If SUN does not - it is not?

The point was that it was a mistake _for the Lisp industry_ to stick to
proprietary architectures simply because their volume was too low to
support continuing to invest in developing almost their entire system as
proprietary Lisp-specific architectures. These investments were seen as
negative-return at the time (not by the companies, I guess).

Doing reasonable garbage collection without special hardware was something
that wasn't widely viewed as entirely practical at the time (although I
believe that one Lisp software vendor had delivered a version of their
system that used conventional virtual memory hardware for real-time
garbage collection).

One alternative approach that was considered (in the course) would have
been for Symbolics to develop their own memory management hardware for a
68020-based system (which, BTW, is what SUN did at the time) that would
have provided the necessary write barrier. This would have still been
proprietary, but it would have been less proprietary and it would have
required a smaller negative-return investment.

Daniel Finster

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

In article <jbs-130297...@dial-sf1-5.iway.aimnet.com>, Jeffrey B. Siegal <j...@quiotix.com> wrote:

At the time, Symbolics had just announced a brand new, lower cost (but
still proprietary) system, and the consensus was that they were basically
wasting time and money on that approach.

11 years later, Symbolics Genera is still THE most capable Lisp environment
available anywhere, at any price. Hyper Win!

"Open Systems" are a loss. In practice, they are euphemisms for the
most anti-interoperable systems available: UNIX

They'll take away my LispM when they pry my cold, dead fingers away
from the Proprietary keyboard.

"Computers are never big enough or fast enough. I have no patience at
all with these damned PCs" -- Bill Gosper

Rainer Joswig

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

In article <jbs-140297...@dial-sf1-23.iway.aimnet.com>,

j...@quiotix.com (Jeffrey B. Siegal) wrote:

> The point was that it was a mistake _for the Lisp industry_ to stick to
> proprietary architectures simply because their volume was too low to
> support continuing to invest in developing almost their entire system as
> proprietary Lisp-specific architectures.

It was tuned for Lisp (and Prolog), but you could
use C, Pascal, Fortran, Ada, too. Is it Lisp specific?

I still don't like the word "proprietary". Why is the SPARC
architecture not proprietary? MIPS? ALPHA?

The word "proprietary" is completely **useless**.

This is business. Everything is proprietary in one way or another,
nobody gives something away without purpose.


> Doing reasonable garbage collection without special hardware was something
> that wasn't widely viewed as entirely practical at the time (although I
> believe that one Lisp software vendor had delivered a version of their
> system that used conventional virtual memory hardware for real-time
> garbage collection).

Another thing is tagging. Symbolics used a 40 bit architecture
for their microprocessor. Believe it or not, but it has
advantages when it comes to Lisp if you want to use
tags. The Ivory already was really fast. Redoing it in a modern
process (see what DEC did to the ARM processor, they
took it from 20-30 to 160 and more Mhz), would be cool. Today´s
technology would make it possible at a cheaper price.

> One alternative approach that was considered (in the course) would have
> been for Symbolics to develop their own memory management hardware for a
> 68020-based system (which, BTW, is what SUN did at the time) that would
> have provided the necessary write barrier. This would have still been
> proprietary, but it would have been less proprietary and it would have
> required a smaller negative-return investment.

The Lisp vendors did not go for mass market. The market niche
went away. The main thing is not "proprietarity". It
is portability, support for (emerging) standards and,
yes, price. SUN still does their own platform, but
they also do support Intel and PowerPC architectures.
And still they only have a limited future. The
desktop is Windows. You need to create ways for people
to understand your software. The Lisp machines
were much to complicated, not very visual (with the exception
of Interlisp) and they were to expensive. They effectively
were research machines.

Sure Symbolics software did run on Windows, Mac and SUN.
But expensive and complicated.

I still don't understand why anybody would call Unix elegant,
user friendly, secure, or even fun to use. The most interesting
market is the mass market. Build a computer/OS that is as easy
to use a television or a toaster. Something that
will not expose its innner workings to users.

Such a thing is the Newton OS. It is the modern
Lisp machine. It is built on many of the original
concepts of the Lisp world (objects, GC, interactive
programming, functions, symbols, images, ...).
The Newton OS 2.0 has gotten very nice ratings
by users and by the press. It is a proof that
you can built an interesting system that
is not foolishly redoing the mistakes of the past.
I'd like to see more of that. More of things
that are not concerned with bits and pointers,
but with user centric design and adaption
to users needs.

And I still think Lisp technology
could make a difference. On the Mac MCL
is such a base for interesting new software.
CL-HTTP is one software foundation. On the PC
we need better Lisp implementations and we will see them.
I hear people are working hard on that.

Short, have market and users in mind. Create interesting
applications. Talk about them. Let people know. Educate them.
Nobody cares whether your web server runs on a Lisp machine
if you have a cool application. Just move fast.

Rainer Joswig

--
http://www.lavielle.com/~joswig/

Sin-Yaw Wang

unread,
Feb 14, 1997, 3:00:00 AM2/14/97
to

George J. Carrette wrote:
>
> There were toy implementation of C available and that didn't seem to hurt
> C.
> So what really happened with LISP?

I guess this serves to answer historical interest. Few people really
care about this anymore.

I think fundamentally, Lisp syntax is not natural for human being. It
is elegant for computer or software to process, but not for real
people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8
2). From high school, you learn how to prove mathematical theorems
procedually.

Basically, a procedural language is more "natural" than a symbolic one.
When I taught Scheme in school, it takes a good 2 weeks just to get the
recursive part into their heads.

If it is less natural, it is less productive, statistically speaking.
Companies lose using a less productive tool. It is a Darwinian
selective process.

--
Sin-Yaw Wang, sin...@acm.org
http://www.concentric.net/~sinyaw/

William Paul Vrotney

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

In article <330512...@acm.org> Sin-Yaw Wang <sin...@acm.org> writes:
>
> I think fundamentally, Lisp syntax is not natural for human being. It
> is elegant for computer or software to process, but not for real
> people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8
> 2). From high school, you learn how to prove mathematical theorems
> procedually.
>

Possibly when you went to college you did learn

g(f(x, y))

did you not?


> Basically, a procedural language is more "natural" than a symbolic one.

You're mixing recipes with sugar. Try again.


> When I taught Scheme in school, it takes a good 2 weeks just to get the
> recursive part into their heads.
>

What's unnatural about that? Recursion is a pretty hairy concept.

> If it is less natural, it is less productive, statistically speaking.
> Companies lose using a less productive tool. It is a Darwinian
> selective process.
>

At one time Roman numerals were considered more natural than Arabic. And
they were, at the time. It takes time for the fittest to survive.

Teunis Peters

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

On Thu, 13 Feb 1997, Jeffrey B. Siegal wrote:

> In article <hbaker-1202...@10.0.2.1>, hba...@netcom.com (Henry
> Baker) wrote:
> > Also, with current large address spaces, large RAMs, large disks, and
> > very high performance chips, it is easy to look backwards and criticize
> > 'Lisp HW'. Keep in mind that with only 2-8 Mbytes of memory in the early
> > 1980's, these machines had spectacular capabilities and performance. Rather
> > than 'ride the wave' of Moore's Law, however, they just fell off the surfboard
> > somewhere about 1986.
>

> Perhaps many of you "old timers" were too close to the forest/trees at the
> time, or maybe you just had a different opinion at the time (and some even
> now).
>

> However, in 1986, I took a Computer Systems Architecture course (don't
> recall the number) as an undergraduate at MIT , and one of the case
> studies was basically why Lisp machines were a "Non Winning" solution. In
> hindsight, the purpose of these case studies was to give the students
> (future engineers) the opportunity to learn from the mistakes made in the
> past and avoid repeating them in the future (and, occasionally, learn from
> correct decisions). In 1986, the mistake made by the Lisp industry in

> stubbornly sticking to proprietary architectures was readily apparent.
>

> At the time, Symbolics had just announced a brand new, lower cost (but
> still proprietary) system, and the consensus was that they were basically
> wasting time and money on that approach.

[upcoming comments are mix of specific answers and open requests to
anyone in particular.... is there some kinda etiquette for this?]

That explains a lot. I just discovered (sorta) Lisp a coupla weeks
ago.... and was quite surprised at just how ADVANCED the system is!

I wondered why not much visible work has happened since the beginning of
the 80's..... [I found LOTSA online material - and just finished
swallowing CLisp/2 manual [well - GLS's version]]

I mean, the modern GUI is an EXCELLENT example of LISP's success. It's
completely LISP compatible [if ya bother to code LISP to talk to it, that
is], and not a single worthwhile LISP engine for anything other than
XWindows+Motif [ick! Motif!] [pick your GUI - they all seem to hold
true... I've coded for most of them]
(aside: I'm restricted at the moment to Linux+X11+no motif)

So, where do we start to make LISP a visible success?

I'm going to try to do something to help things along. I LIKE lisp. It
makes a good alternate assembly language [grin]. I have LOTS of time on
my hands (and no money... so don't recommend any commercial software,
books, or anything involving money. I don't have any. Just a computer
and lots of time).

Personally, I don't know. If proprietary projects are what caused LISP's
failure -- what other choices are there? I mean, following Common Lisp's
standard is a good place to start [but I'm primarily a VR programmer -
and there's naught for standard VR in LISP].

I'm building a LISP engine... Both compiler/interpreter (actually - it
compiles dynamically dependant on available CPU cycles [sorta]).
I'm building it in C, 'cause I need a good assembly language and I don't
plan on only running it on an x86 processor.

Is there some kind of SIMPLE place for me to start? Someplace
incremental to begin? (such as the original LISP engine).
- NOT written in LISP. I DON'T have a runnable LISP engine!
- well... okay, maybe. Just keep it small....

I need information. I have NO access anywhere except online (am on
welfare basically - not fun). Any pointers would be appreciated.

Know of one of those old 16K LISP engines? Even in PDP-11 Assembly? (or
the like - it's easy enough to read :)

... Just need a starting place. Starting with attempting to be Common
Lisp/2 compatible day one is a bit much. Maybe in a couple of weeks -
but need somewhere to begin...

Oh, and anyone know where VEOS went?

Thanks muchly
- Teunis Peters

PS: In these days EVERYTHING is proprietary. Perhaps LISP's lack of
success was 'cause it didn't talk BASIC or Pascal (languages I have _NO_
thoughts even of planning to support. They're <icky>!!!). They were the
languages de jour of the mid-80's. EVERYONE coded in them if they
wanted to sell to the 'public' (whatever that is).

Ciao!

Erik Naggum

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

* Teunis Peters

| (aside: I'm restricted at the moment to Linux+X11+no motif)
:

| I have LOTS of time on my hands (and no money... so don't recommend any
| commercial software, books, or anything involving money. I don't have
| any. Just a computer and lots of time).
:

| I'm building a LISP engine... Both compiler/interpreter (actually - it
| compiles dynamically dependant on available CPU cycles [sorta]). I'm
| building it in C, 'cause I need a good assembly language and I don't plan
| on only running it on an x86 processor.

you might wish to ask Franz, Inc, to send you their free personal use
licence to the already completed Allegro Common Lisp environment for Linux.
it will save you about two hundred years of programming time, and it's more
fun to write in Common Lisp than to write your own implementation, anyway.

I think it may need RedHat 4.0, but I don't know how compatible the
different distributions of Linux are.

#\Erik
--
my other car is a cdr

Earl & Daniella Harris

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to sin...@acm.org

Sin-Yaw Wang wrote:
>
> George J. Carrette wrote:
> >
> > There were toy implementation of C available and that didn't seem to hurt
> > C.
> > So what really happened with LISP?
>
> I guess this serves to answer historical interest. Few people really
> care about this anymore.

Well, I care. I guess I'm in the minority.

>
> I think fundamentally, Lisp syntax is not natural for human being. It
> is elegant for computer or software to process, but not for real
> people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8
> 2). From high school, you learn how to prove mathematical theorems
> procedually.

I can't believe that Lisp failed in the marketplace because of its
syntax.
How hard is it to learn the syntax? Once you learn it, you never forget
it.

>
> Basically, a procedural language is more "natural" than a symbolic one.

> When I taught Scheme in school, it takes a good 2 weeks just to get the
> recursive part into their heads.

You don't mention why having symbols in a language would turn off the
marketplace.

By symbolic language, I assume you mean functional language. This could
be the root of the problem.

Why is recursion so hard for some people? Do people expect it to
be like a for loop? There are many programmers that have an unrational
fear of recursion.

>
> If it is less natural, it is less productive, statistically speaking.
> Companies lose using a less productive tool. It is a Darwinian
> selective process.
>

Some would claim that C++ is an unnatural language that makes
programmers
more productive and has succeeded in the marketplace.

People who advocate C++ will admit that the language has a steep
learning curve. So, the language is "less natural." (If you think
understanding Lisp syntax is unnatural, try understanding all the in and
outs
of C++ message passing. Try understanding virtual functions and
templates.)

However, they come back and say that it is worth learning, because
C++ will make you MORE productive.

IMHO, Scheme hasn't succeeded in the marketplace because of marketing.
C++ is not perfect; but it is well-marketed.

Earl Harris Jr.

Erik Naggum

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

* Sin-Yaw Wang

| I think fundamentally, Lisp syntax is not natural for human being.

I think, fundamentally, human beings differ a great deal in very many
respects. some find infix natural. others find that infix is not so
natural as to be worth their cost (such as very complex syntaxes). these
may not be the majority, but there are enough of them to keep Hewlett-
Packard's calculator division alive and well.

| From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8 2). From
| high school, you learn how to prove mathematical theorems procedually.

how much of what you learned in grade and high school do you use as an
argument against other seemingly contradictory developments? what you
learn first is only evidence that you can't learn everything at once. the
order chosen today should not be considered proof of a particular order as
being more natural than others.



| If it is less natural, it is less productive, statistically speaking.

on the face of it, the reverse seems to be true. if what is natural to the
_untrained_ is a measure of anything, all of society should have been
_less_ productive than living off what can be gathered and hunted.

I think education, learning, training is _precisely_ what is natural for a
human being, and much of what we learn goes to disprove earlier teachings,
especially if we make unwarranted assumptions from those earlier teachings.

| Companies lose using a less productive tool. It is a Darwinian selective
| process.

I always wondered how large companies came to be. thank you for this lead.
I did some research on Darwin's theories of natural selection, and here's
what I found: millions of years ago, much smaller companies than today gave
birth to many small companies, some of them mutants that were better fit
for survival in the intensely competitive underbrush of the ancient world.
the natural selection favored companies that could breed early and mutate
faster, but some species of companies had found a stable breeding cycle and
grew to very large sizes and lived for a very long time. these were the
elephantine companies. to this day, Wall Street, their secret breeding
ground, will honor their age-old breeding rituals that have completely lost
their meaning in the modern world, but they were probably beneficial to the
early elephantines. contrary to popular belief, Darwinian selection is not
just an historic process -- the smaller company species still mutate and
develop in new directions, but even though they do so much faster than the
elephantines, it is difficult to spot it when it happens. if you watch a
company carefully, you might be so lucky to find that it eats more pizza
and take-out food right before it spawns a new company.

much research has gone into the Darwinian selective process as it applies
to companies. of popular interest are Sir Richard Attenborough's excellent
TV series (on PBS) that documents the slow, but steady migration and growth
of companies. Dr. Richard Dawkins has written several books, including The
Blind Stockbroker and The Selfish Meme that both argue strongly for natural
selection and against creationism that says that companies were created out
of nothing by a higher intelligence. however, there are also critics of
Darwin's work on The Origin of the Companies. Erich von Danicken contends
that today's companies are the result of protocompanies planted on earth by
the split-infinitive voyages of Star Trek, The Previous Generation.

now, they don't teach these things in high schools, do they? this goes to
show something, I'm sure.

Brian Harvey

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

I am only an egg, but I think that just about everyone in this discussion
is making a questionable presupposition: that effects have causes in the
world of business. Several people (with very different opinions about
the original question!) have made analogies about "survival of the fittest."

Do I have to remind everyone about Microsoft?

The people who live by owning the means of production -- that is, by
stealing other people's labor -- need to promote the myth that financial
success is the deserved result of really smart decision-making.
But much more often, it's the result of plain dumb luck, being in the
right place at the right time, such as for example getting a contract
from IBM to develop the operating system for what will later turn out
to be (also for no very good reason) the most successful computer
architecture.

I don't mean to go to the opposite extreme and suggest that decisions
have no consequences. Certainly it's possible to shoot oneself in the
foot. But there is no iron law of consequences; otherwise Microsoft
(again) would have died when they adamantly insisted for some time
that the Internet was irrelevant. They overcame that wrong decision
through the inertia of power.

Lisp, on the other hand, has always suffered from an inertia of
perceived weirdness. That guy in this thread who doesn't like
infix is all too representative of the rest of the world.

Again, I'm not arguing that Symbolics did everything right, or that
other choices couldn't have been more successful -- but my guess is
that different decisions wouldn't have had *much* effect.

Henry Baker

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

In article <330512...@acm.org>, sin...@acm.org wrote:

> I think fundamentally, Lisp syntax is not natural for human being. It
> is elegant for computer or software to process, but not for real

> people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8
> 2).

There's nothing wrong with 2+2, but when you get 13 different operators
and 15 different preference levels, most people's (except those of the dorks on
standards committees) eyes glaze over. If you also have _functional arguments_,
then infix notation completely breaks down. Parentheses, when accompanied
by an editor that understands pretty-printing, are extremely easy to parse,
both by machine and by eye.

> From high school, you learn how to prove mathematical theorems procedually.

I'm sorry, but most mathematics is recursive. I'm afraid you've been taught
math by someone whose brain has been fried by Basic and/or Fortran.

> Basically, a procedural language is more "natural" than a symbolic one.
> When I taught Scheme in school, it takes a good 2 weeks just to get the
> recursive part into their heads.

I've taught students both from 'iterative' and 'recursive' languages. Believe
me, recursive is better. Except for 10% who had already fried their brains
on microcomputer Basics, most students found recursive to be easier.

> If it is less natural, it is less productive, statistically speaking.

> Companies lose using a less productive tool. It is a Darwinian
> selective process.

It's more of an _inverse_ Darwinian process. The most productive programmers
die out, because managers and companies can't establish fiefdoms and empires
with only 1 or 2 programmers.

Lisp would kill Microsoft, because then what would people need upgrades
and software support for?

Cyber Surfer

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

With a mighty <joswig-ya0231800...@news.lavielle.com>,
jos...@lavielle.com wibbled into the void...

> This is business. Everything is proprietary in one way or another,
> nobody gives something away without purpose.

This is true. There no free lunches.

The cost of "free" software is that you must sometimes port it
yourself. When this isn't practical - like when you need something
yesterday - the software just isn't available, however "free" it may
be. Hopefully that's a special case that doesn't occur too often.
My guess is that it's rare enough for a few of us too benefit from the
free software that's available.

Proprietary software, on the other hand, is only available for as long
as the vendor wishes to sell it. I've lost count of the number of
tools that I couldn't use because the software was no longer
available, at _any_ price.

So, I agree that we should take care with the word 'proprietary'. It's
meaning can vary, depending on who uses it, when and why. There's too
much politics associated with it.

> Another thing is tagging. Symbolics used a 40 bit architecture
> for their microprocessor. Believe it or not, but it has
> advantages when it comes to Lisp if you want to use
> tags. The Ivory already was really fast. Redoing it in a modern
> process (see what DEC did to the ARM processor, they
> took it from 20-30 to 160 and more Mhz), would be cool. Today´s
> technology would make it possible at a cheaper price.

The Linn Rekursiv also used a 40 bit architecture, with (I think) 5
bits used for the type info, and up to 32 bits for the data. Since my
info comes mainly from magazine articles about it, some details may be
wrong. It may be a little late to look for a Linn Smart Computing
website.



> The Lisp vendors did not go for mass market. The market niche
> went away. The main thing is not "proprietarity". It
> is portability, support for (emerging) standards and,
> yes, price. SUN still does their own platform, but
> they also do support Intel and PowerPC architectures.

I've been told that the Rekursiv was "killed" by the 486, but I think
that was meant was that commodity CPUs overtook the dedicated
architectures in terms of "bang for your buck". The Symbolics move to
the Alpha seems to support this point of view, but I wouldn't know.

Portability is vital. I've felt this since the early 80s, when I first
discovered that such things were at least dreamed of, even if the
reality tended to be very different.

> And still they only have a limited future. The
> desktop is Windows. You need to create ways for people
> to understand your software. The Lisp machines
> were much to complicated, not very visual (with the exception
> of Interlisp) and they were to expensive. They effectively
> were research machines.

Some people still deny that Windows is the way to go. Well, I wish
they were right, but I'm not convinced that the choice is as simple as
"Unix or Windows". Unix and Windows can both work, and they can both
suck, depending on your experience. I wouldn't be at all suprised if
the same was true for Lisp machines.



> Sure Symbolics software did run on Windows, Mac and SUN.
> But expensive and complicated.

Yes, regardless of the advantages, cost and complexity can be a
"killer". How do you convince someone that they need a card that costs
more than their machine, so they can run your software? I've noticed
that developers can use machines with as much as 10 times the RAM as
the users of their software, which can give the developer a false idea
of how the software will perform "in the field". So, even if you
develop on a Lisp machine but deliver for a more conventional
platform, you may still lose.



> I still don't understand why anybody would call Unix elegant,
> user friendly, secure, or even fun to use. The most interesting
> market is the mass market. Build a computer/OS that is as easy
> to use a television or a toaster. Something that

> will not expose its innner workings to users.

I've noticed that a lot of experienced Windows people will criticise
the MS "Bob" interface for being _too friendly_. You just can't win!
The best thing to do may be to just develop something friendly and
then point out to the techies that it wasn't created for _them_.
Perhaps there should be a warning on the box: "This software may be
too easy to use for experienced users!" <sigh>

Here's my favourite quote about operating systems:

"An operating system is a collection of things that don't fit into a
language. There shouldn't be one." Daniel Ingalls, Byte August 1981

In other words, if you can see it, then it's failing. After all this
time - and it wasn't new even then - this may still seem like a
radical idea. IMHO the spirit of punched cards lives on.



> Such a thing is the Newton OS. It is the modern
> Lisp machine. It is built on many of the original
> concepts of the Lisp world (objects, GC, interactive
> programming, functions, symbols, images, ...).

This is the kind of machine that I want to read about!

> The Newton OS 2.0 has gotten very nice ratings
> by users and by the press. It is a proof that
> you can built an interesting system that
> is not foolishly redoing the mistakes of the past.

I've not read as much as I'd like to, perhaps because I read the wrong
kind of magazines. Do you have a URL for a good overview?

> I'd like to see more of that. More of things
> that are not concerned with bits and pointers,
> but with user centric design and adaption
> to users needs.

Likewise. I've seen very little of that, for any platform. Instead,
most magazines give us endless "how to" articles, which barely
question the OS design, if at all.



> And I still think Lisp technology
> could make a difference. On the Mac MCL
> is such a base for interesting new software.

I recently discovered that the Tera assembler uses Scheme! Now that's
an unlikely combination, but I bet it's a very neat one. A little like
discovering that the connection machines used Lisp. It's too easy to
forget that supercomputing people don't just use Fortran/C/C++, but
sometimes choose a very different kind of tool.

> CL-HTTP is one software foundation. On the PC
> we need better Lisp implementations and we will see them.

I've been saying this for some time...

> I hear people are working hard on that.

Excellent! If the recent developments with Smalltalk are a glimpse of
what direction some Lisps may provide, then it'll be perfect timing.
This is a very positive moment for "alternative" language ideas, so it
could be the point at which Lisp makes another move forward.



> Short, have market and users in mind. Create interesting
> applications. Talk about them. Let people know. Educate them.
> Nobody cares whether your web server runs on a Lisp machine
> if you have a cool application. Just move fast.

Yep, move fast. If this is a positive window for alternatives to
languages like C/C++, then we should exploit it while it lasts.
I don't expect a backlash against Java, but some people think it could
happen. If it does, Lisp might suffer from "guilt by association".
We've had enough of that, in the past. Lisp has been associated with
the past, past failures, past successes, but mostly the _past_.

Now we should show what modern Lisp can do. Even a Lisp design that
began in the early 80s is "modern" compared to what most people
consider to be "state of the art" development languages.
--
<URL:http://www.wildcard.demon.co.uk/> You can never browse enough
Martin Rodgers | Developer and Information Broker | London, UK
Please remove the "nospam" if you want to email me.
"Blow out the candles, HAL."

Lars Magne Ingebrigtsen

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

b...@anarres.CS.Berkeley.EDU (Brian Harvey) writes:

> Several people (with very different opinions about the original
> question!) have made analogies about "survival of the fittest."
>
> Do I have to remind everyone about Microsoft?

As much as "survival of the fittest" is really "survival of that which
fits", I'd have to say that Microsoft certainly fits in perfectly in
today's marketplace -- they produce things that almost work and spend
a lot of money advertising to the right people.

--
(domestic pets only, the antidote for overdose, milk.)
la...@ifi.uio.no * Lars Ingebrigtsen

Cyber Surfer

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

With a mighty <30650066...@naggum.no>,
er...@naggum.no wibbled into the void...

> I think, fundamentally, human beings differ a great deal in very many
> respects. some find infix natural. others find that infix is not so
> natural as to be worth their cost (such as very complex syntaxes). these
> may not be the majority, but there are enough of them to keep Hewlett-
> Packard's calculator division alive and well.

Yep, I've met many people who find postfix more natural than infix,
and yes, at least a few of them used HP calculators. While my first
language was Basic, I quickly turned to Forth and found it much
easier, partly because of the use of RPN. I've never been comfortable
with infix. I was playing with the idea of something like Lisp's
prefix notation just before discovering Forth, so if I'd had the
chance to discuss this with a more knowledgable programmer, then I
might have moved from Basic to Lisp, instead of Basic->Forth->APL->
Fortran->assembly->Pascal->C->Lisp. I've probably forgotten a few
languages, but that's most of them.

My real problem wasn't so much infix, as precedence. I coped with C by
using a lot of parentheses. Curiously, after using a Lisp-ware editor
(in ACL/PC), I miss the support for matching parentheses when I edit C
code in a "dumb" editor. I've yet to find this feature in an editor
for a C++ IDE, dispite the desparate need for all kinds of matching.



> I always wondered how large companies came to be. thank you for this lead.
> I did some research on Darwin's theories of natural selection, and here's
> what I found: millions of years ago, much smaller companies than today gave
> birth to many small companies, some of them mutants that were better fit
> for survival in the intensely competitive underbrush of the ancient world.
> the natural selection favored companies that could breed early and mutate
> faster, but some species of companies had found a stable breeding cycle and
> grew to very large sizes and lived for a very long time. these were the
> elephantine companies. to this day, Wall Street, their secret breeding
> ground, will honor their age-old breeding rituals that have completely lost
> their meaning in the modern world, but they were probably beneficial to the
> early elephantines. contrary to popular belief, Darwinian selection is not
> just an historic process -- the smaller company species still mutate and
> develop in new directions, but even though they do so much faster than the
> elephantines, it is difficult to spot it when it happens. if you watch a
> company carefully, you might be so lucky to find that it eats more pizza
> and take-out food right before it spawns a new company.

I'm not even sure that natural selection applies here. If the
operation of a company required no choice by a human, then Darwinian
selection might take place. Alas, humans like to interfere with these
things, often believing that they understand how something works, and
deciding that _this_ must be done, while _that_ must not.

As you might guess, my favourite dog "breeds" are the ones that
breeders have had little chance to abuse, i.e. not breeds at all, but
dogs that are as close as possible to a wolf, and yet still be
relatively "domesticated". I do not appreciate long floppy ears, or
some of the other dog fashions that I'm told can actually be very
unhealthy for the dog.

In other words, I like healthy wolf-like dogs, rather than fashion
accessories. Of course, this is just my personal feeling, and it's
probably all wrong. Most dog owners appear to be unconcerned about
such things, judging by their choice of breed.

My feelings about programming languages are not that different.
Precedence strikes me as being an artificial idea bolted onto
programming languages in order to assist scientists write software.
This is a fair use, but not all modern software is for crunching
numbers. It would be neat if some languages could reflect the non-
numerical interests of the programmers who use them.

> much research has gone into the Darwinian selective process as it applies
> to companies. of popular interest are Sir Richard Attenborough's excellent
> TV series (on PBS) that documents the slow, but steady migration and growth
> of companies. Dr. Richard Dawkins has written several books, including The
> Blind Stockbroker and The Selfish Meme that both argue strongly for natural
> selection and against creationism that says that companies were created out
> of nothing by a higher intelligence. however, there are also critics of
> Darwin's work on The Origin of the Companies. Erich von Danicken contends
> that today's companies are the result of protocompanies planted on earth by
> the split-infinitive voyages of Star Trek, The Previous Generation.

<giggle>

> now, they don't teach these things in high schools, do they? this goes to
> show something, I'm sure.

Perhaps the result of people who think they "know" better interfering
in the educational process? Hold on to that copy of The Blind
Stockbroker, as it may be valuable when the Real Programmers have
burned most of them. I'm keeping mine in a fireproof vault...

Cyber Surfer

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

With a mighty <5e4lm3$q...@agate.berkeley.edu>,
b...@anarres.CS.Berkeley.EDU wibbled into the void...

> I am only an egg, but I think that just about everyone in this discussion
> is making a questionable presupposition: that effects have causes in the

> world of business. Several people (with very different opinions about


> the original question!) have made analogies about "survival of the fittest."
>
> Do I have to remind everyone about Microsoft?

I've often made this point. MS may suck, but they also succeed.



> The people who live by owning the means of production -- that is, by
> stealing other people's labor -- need to promote the myth that financial
> success is the deserved result of really smart decision-making.

Err, I wouldn't use the word 'stealing', but I _think_ I see what
you're saying.

> But much more often, it's the result of plain dumb luck, being in the
> right place at the right time, such as for example getting a contract
> from IBM to develop the operating system for what will later turn out
> to be (also for no very good reason) the most successful computer
> architecture.

Some might say that this isn't luck, but good business sense putting
you in the right place at the right time. Let's not underestimate
their acheivements _before_ IBM gave them the biggest break that a
young computer company could hope for. Unfortunately, on the technical
front, it was all downhill from then on.

Still, let's not forget some IBM's other mistakes, before and after.
If they'd waited a little longer, they could've used the 68K, giving
Macs and PCs a common CPU. I'm assuming that would've been a Good
Thing, like allowing the Mac OS and software to migrate to the PC
hardware, thus changing history.

There are so many missed opportunities like this that I'd say that
some of it is certainly chance, but only if you have no vision and let
yourself be swayed by every little gust of wind. Perhaps this is what
"good business sense" does to an industry. A little more vision
could've made a hell of a difference, but we'll never know.

There are visionary ideas still waiting to be picked up by the
commercial world. The simple idea of interactive computing still meets
a degree of resistance, even now. Never mind the equally radical idea
of making it _easy to use_...You'd expect _that_ to sell a few boxes.



> I don't mean to go to the opposite extreme and suggest that decisions
> have no consequences. Certainly it's possible to shoot oneself in the
> foot. But there is no iron law of consequences; otherwise Microsoft
> (again) would have died when they adamantly insisted for some time
> that the Internet was irrelevant. They overcame that wrong decision
> through the inertia of power.

That was too short a period of time. It takes a long time for a giant
like MS to die. What we'll probably find is that sometime parts of MS
will die, but they'll continue by changing direction and fucusing on
their remaining strengths. Just look at IBM.



> Lisp, on the other hand, has always suffered from an inertia of
> perceived weirdness. That guy in this thread who doesn't like
> infix is all too representative of the rest of the world.

Do yo know where the word 'weird' comes from? The Way of the Weird
isn't as feared as it used to be, but the old meaning of the word has
been long forgotten, while the belief system that inspired it has
gained a significant degree of respectability.

If the establishment won't embrace Lisp in the same way, at least we
too might gain some degree of respectability. Perhaps the Dylan people
have the right idea, by using a name that doesn't have the old and
possibly negative associations for most people.

Lisp _is_ the Way of the Weird, in programming terms. Imagine a group
of Lisp hackers, once a year gathering at a ring of stone lambdas.
Most people might not understand why we do it, but do we have enough
respect for the establishment to protect our right to practice our
beliefs? I think so. Like the druids, we may have (relatively) small
numbers, but we're still here, and I expect we'll be here when long
after C++ is just a footnote in history.

BTW, did you mean that disliking infix is "all too representative of
the rest of the world", of the exact opposite? Infix addicts can use a
Lisp-like language such as Dylan.



> Again, I'm not arguing that Symbolics did everything right, or that
> other choices couldn't have been more successful -- but my guess is
> that different decisions wouldn't have had *much* effect.

This is certainly debatable - look at us, we're debating it! ;-)
I don't think that we should blame Symbolics for everything that is
"wrong" with Lisp. Perhaps the infix/postfis issue is more
significant? Some ideas are too radical for most people, either
because they're ahead of their time, or because not enough people want
these kind of features.

What most people want is simply software that does what they want -
they don't want to know about the internals. Almost all software today
reveals _something_ about the thinking of the people who created the
software, instead of the thinking of the people who'll use it.

In other words, Xerox PARC got it both right _and_ wrong. An OS is the
wrong thing, but we'll need something that allows us to distribute
code to users in a manner that doesn't require the user to become a
programmer. This is something an OS with a GUI can do very well. For
pure research, you don't need an OS. In the "real world", most people
insist that you need one. So it goes.

Will Hartung

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

Earl & Daniella Harris <esha...@widomaker.com> writes:

>Sin-Yaw Wang wrote:

>>
>> I think fundamentally, Lisp syntax is not natural for human being. It
>> is elegant for computer or software to process, but not for real
>> people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8

>> 2). From high school, you learn how to prove mathematical theorems
>> procedually.

>I can't believe that Lisp failed in the marketplace because of its


>syntax.
>How hard is it to learn the syntax? Once you learn it, you never forget
>it.

Yes, true. Once you learn it. The devil is in the details.

>>
>> Basically, a procedural language is more "natural" than a symbolic one.
>> When I taught Scheme in school, it takes a good 2 weeks just to get the
>> recursive part into their heads.

[ comments on a symbolic languages, deleted ]

>Why is recursion so hard for some people? Do people expect it to
>be like a for loop? There are many programmers that have an unrational
>fear of recursion.

Dare we say an "unnatural" fear of recursion?

I think a lot of it depends on a persons background. I can't comment on
how learning about computers, programming and problem solving using a
functional language would affect the way I view them today, because
I learned the completely opposite way. BASIC, Z80 Assembly, FORTRAN,
Pascal, C. I think that I can safely say that I could be productive in
any LANGUAGE that follows this kind of heritage VERY quickly. It is
VERY easy to write BASIC in FORTRAN, and Pascal in C. I'm not saying it
is good code, but it is simple, and it is practical.

Every "pseudo-code" I've seen looks, roughly, like Pascal.

From this kind of background, from this kind of knowledge base, Lisp
and Scheme are almost unapproachable casually. I don't know Ada, but I
am pretty confident I could get the gist of an algorithm written in
Ada. Heck, even the details. Without ever seeing Ada except maybe in a
magazine article.

The whole reason that I am involved in the Lisp/Scheme family of
languages at all today, is SPECIFICALLY because they are/were
unapproachable. Lisp is one of those languages that I never "got". I
could not look at a Lisp program and have any reasonable chance of
figuring out what it did. The parens could be distracting, the words
were complete greek (almost literally), and the layout was confusing.

I consider myself rather computer savvy, and it irked me that there
was a computer "thing" that I didn't "get". So, I made a concerted
effort to figure it out. It took a basic CS book to be my rosetta
stone, as it was talking about stuff I knew (CS concepts) in a
language I didn't (Scheme). For me, that was the breakthrough.

(Simply Scheme was the book, BTW)

Scheme and Lisp aren't particularly difficult to learn, if you throw
your preconceptions out at the door. And I imagine that they would
be wonderful for a first exposure to computing. It would, minimally,
give students a better foundation to base their programming skills on
no matter what language they choose in the future.

BUT, they ARE "different" from the typical bread and butter languages
of today. And the languages that one programs in influences how we
think about algorithms and problem solving. And when people approach a
problem, they use their past experiences to evaluate and solve the
problem.

So, if you throw a C programmer a block of Lisp Code, they almost
immediatly go into abort mode. Very little of their past experiences
translate well so the Lisp Code is immediately more "unreadable". Then
they pile on the preconcieved notions about Lisp, and the situations
just get worse. They give up. "I can't read this, this is Lisp." They
won't say that about Pascal. They won't say that about Basic. They'll
struggle through it and figure it out. Because half of the lines are
the same as C, and the constructs use the same verbs.

If you've ever read "The Little Lisp/Schemer" you'll notice that they
don't even mention the iterative constructs. All they ever use is
recursion. You wouldn't even know that Scheme had a (do ...) in it.
When you already have one language under your belt, you're going to
try find the similarities in the new one you're learning. So, I would
think if someone is learning functional Scheme, then "yes", they would
consider recursion the "for" loop.

I cannot comment on whether Lisp is less natural than Pascal, as I
learned the "other way" first. However, I will say that I think folks
with extensive, and exclusive, experience in one form versus the
other, they will have to make a major cognitive leap to pick up the
other form.

There is a lot of Baby Duck syndrome in computer languages. You know
and prefer what you learn first. Editors, computers, Moms Cooking,
deodorants, and girlfriends.

C/C++ have a LOT of mindshare/ad-space. Every "4GL" on the planet is a
trumped up BASIC. And there are a lot of Baby Ducks out their quacking
their way into their local Crown Books looking for something "technical"
about computers and programming. Blammo - they're infected for life.

The problem with marketing Lisp and Scheme is twofold.

One: the ads will be just as buzzword compliant as any other language
being marketed today, "So why switch?".

Two: The elegant, high level nature of the languages do not
communicate well on paper. They must be experienced. To be
experienced, you need to make that leap. That leap can be
difficult, particularly if you're just "playing with it."

Notice also, today, that the languages aren't being marketed as much
as the environments. Borland is not selling Object Pascal, they're
selling "Delphi - Fast, efficient RAD. Easy DB access, blah blah
blah". The C++ vendors throw in a couple of bullet points to note that
they're sorta kinda keeping up with the moving target standard, and,
oh by the way, "check out These Features" and "But wait, there's more!"
The vendors are trying to out "Ronco" each other.

You'll note that no where on these boxes does it mention "We provide
all of these features to make your life in C++ Hell that fraction more
pleasant, though hardly redeeming."

So I think it is fair to say that Lisp is not "natural". You can say
that about anything, actually. I mean, really, how's your Russian? (I
tried it, there isn't a whole lot that is "natural" in Russian :-)
:-))

It is sad that in a time when the general purpose machines available to
Joe Sixpack have anough oomph and resources to truly take advantage of
a full blown, in your face, Lisp Machine-esque envrironment, that the
bandwagon is so stuffed full of snake oil salesman, that the jewels are
difficult to find. And what's worse, most folks aren't willing to seek
them out.

--
Will Hartung - Rancho Santa Margarita. It's a dry heat. vfr...@netcom.com
1990 VFR750 - VFR=Very Red "Ho, HaHa, Dodge, Parry, Spin, HA! THRUST!"
1993 Explorer - Cage? Hell, it's a prison. -D. Duck

Kevin Russell

unread,
Feb 15, 1997, 3:00:00 AM2/15/97
to

Sin-Yaw Wang wrote:
> I think fundamentally, Lisp syntax is not natural for human being. It
> is elegant for computer or software to process, but not for real
> people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8
> 2). From high school, you learn how to prove mathematical theorems
> procedually.

I've got to give the knee-jerk response of a linguist here. Just
because you learned as a kid a language that does things one particular
way doesn't make every other way of doing it unnatural or inhuman.

*You* expect sentences to go Subject Verb Object -- essentially infix
notation. This isn't inherently "natural". There are a bunch of
languages whose syntax works this way (e.g., English, French, Chinese).
But there are an equally large group of languages that use the "postfix
notation" of Subject Object Verb (e.g., Japanese, Korean, Hindi), a
respectable number that use "prefix notation", Verb Subject Object
(e.g., Gaelic, Hebrew), a few that use the other three possible orders,
and a whole bunch that let you mix words up any way you want as long as
you mark everything with a prefix or suffix (kind of like the keyword
arguments of Common Lisp).

My HP calculator works like Japanese -- get all the characters on the
stage, *then* say what to do with them. Lisp, Prolog (if you don't go
messing with "op"), and randomly chosen subsets of most other languages
do the opposite. I'm not sure how much difference the mirror-image
reversal makes: I find that my brain slips into much the same state
when I'm reading a Subject-Object-Verb natural language as when I'm
reading Scheme code.

If you honestly can't stand either prefix or postfix notation, if you'd
honestly rather use infix notation, I can understand and respect that.
But please don't justify your preference as being the one true way that
the human mind works. That way lies ethnocentrism and worse.

-- Kevin

Kevin Russell
University of Manitoba
"You say poTAYto, I say ... um, poTAYto. OK, bad example."

Erik Naggum

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

* Will Hartung

| It is sad that in a time when the general purpose machines available to
| Joe Sixpack have anough oomph and resources to truly take advantage of a
| full blown, in your face, Lisp Machine-esque envrironment, that the
| bandwagon is so stuffed full of snake oil salesman, that the jewels are
| difficult to find. And what's worse, most folks aren't willing to seek
| them out.

what makes _me_ sad is the focus on "most folks" and "Joe Sixpack".

why are we even _thinking_ about home computer equipment when we wish to
attract professional programmers?

in _every_ field I know, the difference between the professional and the
mass market is so large that Joe Blow wouldn't believe the two could
coexist. more often than not, you can't even get the professional quality
unless you sign a major agreement with the vendor -- such is the investment
on both sides of the table. the commitment for over-the-counter sales to
some anonymous customer is _negligible_. consumers are protected by laws
because of this, while professionals are protected by signed agreements
they are expected to understand. the software industry should surely be no
different. (except, of course, that software consumers are denied every
consumer right they have had recognized in any other field.)

Microsoft and its ilk has done a marvelous job at marketing their software
in the mass market so that non-professional programmers pick them up and
non-programmers who decide where the money should be wasted will get a warm
fuzzy feeling from certain brand names. I mean, they _must_ recognize that
nothing else they buy for their company is advertised in the newspapers
that morning and they aren't swayed by consumer ads when they buy office or
plant equipment, are they? so _why_ do they swallow this nonsense from the
mass-marketing guys hook, line, and sinker?

they don't make poles long enough for me want to touch Microsoft products,
and I don't want any mass-marketed game-playing device or Windows appliance
_near_ my desk or on my network. this is my _workbench_, dammit, it's not
a pretty box to impress people with graphics and sounds. when I work at
this system up to 12 hours a day, I'm profoundly uninterested in what user
interface a novice user would prefer.

I'm reminded of the response to how people of little or no imagination were
complaining about science fiction and incredibly expensive space programs:
"the meek can _have_ the earth -- we have other plans".

no, this is not elitist, like some would like to believe in order to avoid
thinking about the issues. this is just calling attention to the line
between amateurs and professionals, between consumers and producers, that
is already there in _every_ field. I want people to wake up to this
difference and _reject_ the consumer ads when they look for professional
tools. if it's marketed to tens of millions of people, it is _not_ for the
professional programmer, and not for you. if its main selling point is
novice-friendliness, ignore it unless you _are_ a novice. (and if you are
a novice trying to sell your services in a professional market, get the
hell out of the way.)

Alaric B. Williams

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

On Sat, 15 Feb 1997 19:20:15 -0000, cyber_...@wildcard.demon.co.uk
(Cyber Surfer) wrote:

>My real problem wasn't so much infix, as precedence. I coped with C by
>using a lot of parentheses. Curiously, after using a Lisp-ware editor
>(in ACL/PC), I miss the support for matching parentheses when I edit C
>code in a "dumb" editor. I've yet to find this feature in an editor
>for a C++ IDE, dispite the desparate need for all kinds of matching.

If you've a PC, try the free DJGPP compiler and the RHIDE IDE. Based
on Borland's IDE, with syntax highlighting and three kinds of brace
mathcing - (), {}, []!

ABW

ABW
--

"Simply drag your mother in law's cellphone number from the
Address Book to the Laser Satellite icon, and the Targeting
Wizard will locate her. Then follow the onscreen prompts for
gigawattage and dispersion pattern..."

(Windows for Early Warning and Defence User's manual P385)

Alaric B. Williams Internet : ala...@abwillms.demon.co.uk
<A HREF="http://www.abwillms.demon.co.uk/">Hello :-)</A>

Rainer Joswig

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

In article <30650070...@naggum.no>, Erik Naggum <er...@naggum.no> wrote:

> you might wish to ask Franz, Inc, to send you their free personal use
> licence to the already completed Allegro Common Lisp environment for Linux.
> it will save you about two hundred years of programming time, and it's more
> fun to write in Common Lisp than to write your own implementation, anyway.
>
> I think it may need RedHat 4.0, but I don't know how compatible the
> different distributions of Linux are.

Make sure you get the patches for Linux ACL 4.3 from ftp.franz.com.

Yesterday I did install CL-HTTP 60.63 on my home Pentium PC (which is
accessible from the Internet, 32 MB RAM, 133 Mhz) with Linux and ACL 4.3.
The Apache server now has been removed.

Now I have CL-HTTP under Symbolics Genera 8.3, Macintosh Common Lisp 4.0
and ACL/Linux 4.3. Talk about portable code. The GUI doesn't matter anymore.

I think I will do some dynamic homepage building.

--
http://www.lavielle.com/~joswig/

Cyber Surfer

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

With a mighty <vfr750E5...@netcom.com>,
vfr...@netcom.com wibbled into the void...

> The whole reason that I am involved in the Lisp/Scheme family of
> languages at all today, is SPECIFICALLY because they are/were
> unapproachable. Lisp is one of those languages that I never "got". I
> could not look at a Lisp program and have any reasonable chance of
> figuring out what it did. The parens could be distracting, the words
> were complete greek (almost literally), and the layout was confusing.

Was this before you read a Lisp tutorial? I learned Basic from a
manual, which probably didn't help my coding style - I learned a lot
of that from a book that used PL/I and Fortran code. I later added to
this when I learned Forth, APL, Lisp, and a few other languages. I've
never learned PL/I or Fortran, as the book I mentioned about didn't
teach those languages. (Can you guess which book that was?)



> Scheme and Lisp aren't particularly difficult to learn, if you throw
> your preconceptions out at the door. And I imagine that they would
> be wonderful for a first exposure to computing. It would, minimally,
> give students a better foundation to base their programming skills on
> no matter what language they choose in the future.

Yes, a book that starts from absolute basics can help, esp if you're
prepared to go back to the basics and forget all the things that you
_think_ you know about programming.



> BUT, they ARE "different" from the typical bread and butter languages
> of today. And the languages that one programs in influences how we
> think about algorithms and problem solving. And when people approach a
> problem, they use their past experiences to evaluate and solve the
> problem.

That's why I enjoy learning new programming languages. I can learn to
look at problems in new ways, and then see how much of my existing
experience might apply. It's hard work, but rewarding.



> So, if you throw a C programmer a block of Lisp Code, they almost
> immediatly go into abort mode. Very little of their past experiences
> translate well so the Lisp Code is immediately more "unreadable". Then
> they pile on the preconcieved notions about Lisp, and the situations
> just get worse. They give up. "I can't read this, this is Lisp." They
> won't say that about Pascal. They won't say that about Basic. They'll
> struggle through it and figure it out. Because half of the lines are
> the same as C, and the constructs use the same verbs.

As I said, it's hard work. Those of us who take to Lisp like a duck to
water can easily forget just how hard it is for everyone else. I've
never been afraid of abstractions - just the opposite, in fact - but I
may be one of the exceptions. C is very simple to understand because
it looks so much like assembly language. It's very close to the
machine level, with few abstractions beyond what the concept of a CPU
demands from a programmer.

Attacks on Lisp from C/C++ programmers tend to focus on the features
that distinguish Lisp from C, and which are simply enough for a C/C++
programmer to _think_ that they understand them. Garbage collection is
a perfect example. A C programmer won't like the idea of the language
doing things behind their backs, like moving objects about. It won't
matter that this can help an app perform _better_, as it's outside the
experience of the C programmer, and it'll make them uncomfortable.
Some of them might even feel the same way about VM!



> If you've ever read "The Little Lisp/Schemer" you'll notice that they
> don't even mention the iterative constructs. All they ever use is
> recursion. You wouldn't even know that Scheme had a (do ...) in it.
> When you already have one language under your belt, you're going to
> try find the similarities in the new one you're learning. So, I would
> think if someone is learning functional Scheme, then "yes", they would
> consider recursion the "for" loop.

If there was a "Scheme for C++ Programmers", I'd hope that it would
show how tail recursion in C can be optimised into a "while" loop.
That should help make a C/C++ programmer feel more comfortable.

A few words, or even pages, on code transformation would also help.



> I cannot comment on whether Lisp is less natural than Pascal, as I
> learned the "other way" first. However, I will say that I think folks
> with extensive, and exclusive, experience in one form versus the
> other, they will have to make a major cognitive leap to pick up the
> other form.

A number of educational institutions teach programming using Lisp or a
more functional language (Haskell, SML, Hope, etc). Perhaps a student
from one of the places could comment. I too learned programming using
an imperative style, but I had no trouble adapting. I could just be an
exception, of course.



> There is a lot of Baby Duck syndrome in computer languages. You know
> and prefer what you learn first. Editors, computers, Moms Cooking,
> deodorants, and girlfriends.

<grin> This is very true. Also, some people will strongly resist
change or new ideas (that is, ideas that are new to _them_).



> C/C++ have a LOT of mindshare/ad-space. Every "4GL" on the planet is a
> trumped up BASIC. And there are a lot of Baby Ducks out their quacking
> their way into their local Crown Books looking for something "technical"
> about computers and programming. Blammo - they're infected for life.

Yeah, imagine if somebody had put Lisp on the Altair, before Basic.
A whole empire might've been built using Lisp, instead of toy
languages. Curiously, some people MS are trying to correct this error,
by applying functional ideas to VRML scripting. I wish them luck!



> The problem with marketing Lisp and Scheme is twofold.
>
> One: the ads will be just as buzzword compliant as any other language
> being marketed today, "So why switch?".

Any change that requires effort without a quick reward will be
unpopular. Moving to Lisp from C requires a lot of effort, which means
that the reward will be slow. We know that it'll be worth it, but
that's because we've made that change already.

We live in a world of bean counters, where the cost is everything,
and the value means nothing at all. Hence the popularity of C/C++.



> Two: The elegant, high level nature of the languages do not
> communicate well on paper. They must be experienced. To be
> experienced, you need to make that leap. That leap can be
> difficult, particularly if you're just "playing with it."

I'm not so sure about this. I doubt it because _I_ was able to
understand it, just by reading about it. However, I can understand a
lot of things by just reading about them, while other programmers may
need a little more. I agree that experience can certainly help form a
deep understanding.



> Notice also, today, that the languages aren't being marketed as much
> as the environments. Borland is not selling Object Pascal, they're
> selling "Delphi - Fast, efficient RAD. Easy DB access, blah blah
> blah". The C++ vendors throw in a couple of bullet points to note that
> they're sorta kinda keeping up with the moving target standard, and,
> oh by the way, "check out These Features" and "But wait, there's more!"
> The vendors are trying to out "Ronco" each other.

Yes, I've noticed this, too. Environments like VB and Delphi have a
lot too teach C++ people, not just Lisp hackers. The language alone
isn't enough anymore, at least not for platforms like Windows.



> It is sad that in a time when the general purpose machines available to
> Joe Sixpack have anough oomph and resources to truly take advantage of
> a full blown, in your face, Lisp Machine-esque envrironment, that the
> bandwagon is so stuffed full of snake oil salesman, that the jewels are
> difficult to find. And what's worse, most folks aren't willing to seek
> them out.

Most folks are ignorant. Fortunately, they're not stupid. If there
were a few mainstream apps written in Lisp, and everyone _knew_ they
were written in Lisp, and they outperformed anything not written in
Lisp, then it _might_ begin to change. The only reason that I doubt
this is that I expect there to be just as much BS. It's not enough for
Lisp to be better than C++, it's necessary to do it on C++ ground,
and to be _undeniably_ better.

I've often seen AI apps given as examples of Lisp apps, which doesn't
exactly help dispel the image that Lisp is only good for AI. Bizarre
tho it may be, some people see AI as something to avoid. I guess
they've not noticed AI techniques creeping into the "real world".

Right now, most people won't even know that Lisp is still _used_,
never mind capable of beating C++. That's how bad the problem is.

Cyber Surfer

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

With a mighty <30650480...@naggum.no>,

er...@naggum.no wibbled into the void...

> no, this is not elitist, like some would like to believe in order to avoid


> thinking about the issues. this is just calling attention to the line
> between amateurs and professionals, between consumers and producers, that
> is already there in _every_ field. I want people to wake up to this
> difference and _reject_ the consumer ads when they look for professional
> tools. if it's marketed to tens of millions of people, it is _not_ for the
> professional programmer, and not for you. if its main selling point is
> novice-friendliness, ignore it unless you _are_ a novice. (and if you are
> a novice trying to sell your services in a professional market, get the
> hell out of the way.)

I think that we agree about most of what you've said, but there are a
few points that I'd like to add.

The problem is that most people _are_ novices, and if you only write
software for the experts, then your market will be very small. What
most of us see as the computer industry (and I'm including the
workstation market) is only the size it is today because of the
success of small machines sold to to "small" users. A lot of those
users are now corporate users.

I don't expect these plebs to "get the hell out of the way", as you
put it. I expect them to steamroller over anyone who gets in _their_
way, and that includes you and me. Those consumer adverts that trouble
you are a symptom of this. It's happening.

Of course, a few of us will be fortunate enough to never have to use
consumer products. There's a word for such people, and here's a
definition (from the Collins English Gem Dictionary): n. the choice or
select body; the pick of the best part of society; aristocracy.

I'm not denying that there's a difference between amateurs and
professionals. I just don't believe that Lisp should be denied to
anyone based on their _existing_ (lack of) skills. Ignorance can be
corrected - it's only stupidity that will be a problem, and if we can
write software of a high enough quality, should that not give us a
competeitive edge over those who are less skilled?

If evolution _is_ possible, based on the survival of the fittest, then
this should be enough for us. On the other hand, if survival has
little to do with being the "fittest" (whatever that may mean), then
perhaps we are just an elite, using Lisp simply because we can.

However, there's another way of looking at it. We could be interfering
with "evolution" just as much as anyone else, when we choose Lisp. If
so few people recognise the value of Lisp, then we're expressing our
personal preferences by using Lisp. If that has no effect on the
masses of consumers, it could be that we're either writing the wrong
kind of software (apps that consumers don't want), or that there's
another bias, working against software written in Lisp and causing
such apps to "fails" (perhaps nothing more a C++ bigot trashing an app
written in Lisp, in a so-called "review").

So, do we have evolvution by natural selection or by selective
breeding based on the preferences of an elite? The "elite" could be
us, but I could just as easily be refering to the elite who decide
which tools their company will use/create/sell/etc. Perhaps the only
difference is the amount of power that we wield, i.e the number of
programmers/users that we directly influence/effect whenever we make a
choice.

Bill Gates wields a great deal of this power, and his choice has been
- in the past - Basic. Assuming that he made the choice to adopt C and
then C++ as the _other_ main development tool at MS, we might pause to
wonder how different history might have been if he'd been a fan of
Lisp, instead of Basic. Alas, we'll never know.

I'm not sure that it's too late to undo the damage that has been done
by Gates and MS, but I'm not yet ready to give up. Perhaps I have a
vested interest, in that I like being employed. That's why I'm keen to
find a way to use Lisp as part of my job. I have a much better chance
of doing this than most programmers in my position, as I know what
Lisp is capable of and I have an employer who is capable of
appreciating it.

There may not be many programmees like me, but its hard to tell. You
won't see any of my software on the shelves in a shop! Still, it's not
all doom and gloom. We're there...and looking for a Lisp that gives us
the same platform support that VB and VC++ already provide. _That's_
what Joe Sixpack wants, even when he wants to use Lisp.

Of course, if you think that Lisp shouldn't be used to write consumer
software, then just say so. There's no need to slag off such people
for being what they are. We'll understand you without the politics.

Jeffrey B. Siegal

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

> I still don't like the word "proprietary". Why is the SPARC
> architecture not proprietary? MIPS? ALPHA?

Let's not get caught up with the word "proprietary." If you like,
substitute "specialized," "Lisp-specific," "low-volume," or even
"roll-your-own."

SPARC, MIPS and ALPHA did not exist in 1986. Sun was relatively low
volume; they used the 68K rather than develop their own architecture (and
they stayed with the 68K for three generations). It was only _after_ they
became much higher volume (much higher than any Lisp machine) did they
decide to move to SPARC.

Jeffrey B. Siegal

unread,
Feb 16, 1997, 3:00:00 AM2/16/97
to

In article <5e4lm3$q...@agate.berkeley.edu>, b...@anarres.CS.Berkeley.EDU
(Brian Harvey) wrote:

> But there is no iron law of consequences; otherwise Microsoft
> (again) would have died when they adamantly insisted for some time
> that the Internet was irrelevant. They overcame that wrong decision
> through the inertia of power.

It is funny how it is possible to draw opposite conclusions from the same
sequence of events. I see this as an example of how Microsoft has made
_good_ decisions.

My take is that Microsoft showed great flexability in being able to both
recognize their mistake and change course very quickly once the did.
Certainly they did so in much less time than it took for IBM to realize
that PC's weren't irrelevant (and with much less negative impact on the
bottom line, so far).

> Again, I'm not arguing that Symbolics did everything right, or that
> other choices couldn't have been more successful -- but my guess is
> that different decisions wouldn't have had *much* effect.

Certainly spending less developing specialized (okay, I'll stop writing
"proprietary") hardware would have had a big positive effect on their
bottom line. As Symbolics (along with the rest of the Lisp industry)
spiraled down into the financial toilet, they took many years of work by
many very smart people with them.

Erik Naggum

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

* Cyber Surfer

| The problem is that most people _are_ novices, and if you only write
| software for the experts, then your market will be very small.

_all_ professional markets are small. I expect every professional to be an
expert in his field. novices should go to school. experts have graduated
and passed the equivalent of bar exams and review boards.

| Of course, a few of us will be fortunate enough to never have to use
| consumer products.

what are you talking about? are you a professional in every field of your
life? I only have time for one profession and dabbling in a few others.

I'm positively _delighted_ that I can buy consumer products so cheaply and
so conveniently, but -- get this -- I'm not in the business of making
microwave ovens or wine glasses or books or speakers, but I _do_ expect
those who _are_ to have professional tools, so I can buy consumer goods
inexpensively with moderately high quality. I don't _want_ Joe Blows'
Homemade Microwave Oven, OK?

I want "programmer" to be a professional title, with all the expectations
that come with it.

| I just don't believe that Lisp should be denied to anyone based on their
| _existing_ (lack of) skills.

to ask a rhetorical question first: why not? I'm moderately skilled in the
legal, medical, and veterinary professions, and I can discuss any issue I
might want to understand more fully with professionals and students in
these fields, but I hope I would be prosecuted if were to sell any such
services to the general public. in contrast, any goddamn idiot can call
himself a programmer.

I believe in professions. I really _like_ being able to trust my lawyer,
my doctor, and my cat's vet. for that matter, I really _like_ to trust
whoever approves the quality of the food I buy, too. but can I _trust_
somebody who calls himself a "programmer"?

I don't want to deny Lisp to anybody. you can buy a pack of scalpel blades
and lots of medical equipment at well-stocked drugstores if not directly
from the importer or vendor, but you don't become a doctor because you can
buy his tools! neither does a surgeon get his tools from K-Mart.

| Of course, if you think that Lisp shouldn't be used to write consumer
| software, then just say so. There's no need to slag off such people
| for being what they are. We'll understand you without the politics.

christ! please try to listen to what I say, will you? I want quality
languages to be used to write software _everywhere_, I just don't buy your
bogus argument that if the consumer can't use those languages himself, then
nobody else should be allowed to write in them, either. (at least that's
the message I'm getting from you, and you have been repeating it for many
months, now.)

tell you what. I receive some cast-away meat from dissections at my nearby
veterinary school, and I have absolutely no problem with filling my fridge
with dead animal parts. I enjoy studying the interior design of animals
while I feed my cat with the meat. if you wade through my garbage, you'd
find whole ribs, an assortment of bones, lots of animal skin, an occasional
hoof, and a large number of used scalpel blades. I really hope you
wouldn't come to me with a sick dog because of it, but that's the way many
people approach programmers.

the fact that I can buy scalpel blades wholesale and that I can buy a whole
lot of medical equipment and chemical compounds that could be used to kill
people and leave very little trace of it if I were so inclined, suggests to
me that I'm not in any way _denied_ access to the tools of the medical
profession. this is how I want things to be for programming, too, but I
want people who build our future society to be skilled at their work.

what makes me nervous about the future is that unskilled people who are as
likely to kill or maim information as to heal it are entrusted with our
past (i.e., accurate records), with critical information for decisions that
affect lives and careers, and with all kinds of other information too
difficult or too voluminous to let people handle directly. our society is
totally dependent on the accuracy of its information. we entrust that
accuracy to unskilled labor and household-grade tools. that would be like
doing open heart surgery on your living-room table with only kitches
utensils. (I use the proper medical equipment on the dead animals I get,
because kitchen utensils aren't fit for the job at all.)

I'm considering having my cat sterilized. I have almost all the equipment
I need to do the procedure at home, I know vaguely what to do, and I'm sure
I could have her sterilized safely and painlessly given some other cats to
experiment on first. however, I have only one cat, I don't think killing a
lot of cats just to let me learn something somebody else already knows is a
good idea, and I love this little animal, so I'm going to let a vet handle
it. I think companies should think about their information with equal
care, and leave the job to real professionals. unfortunately, Microsoft is
trying to tell us that we should all sterilize our pets (or fix the heart
problems of our parents) at home, with Microsoft kitchen utensils, which we
know break at any inkling of pressure. I happen to think that _many_ more
lives would depend on accurate information and fully operational and
functional software systems than could ever be lost if we let quacks loose
on the world, because people who wanted to live would have the brains to
_demand_ the necessary means to ascertain the quality of those who could
mess with their health, but they obviously _don't_ have the brains to even
accept that programmers need to be accredited professionals.

Jim McDonald

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

Henry Baker (hba...@netcom.com) wrote:

: In article <330512...@acm.org>, sin...@acm.org wrote:

: > I think fundamentally, Lisp syntax is not natural for human being. It
: > is elegant for computer or software to process, but not for real
: > people. From grade school, you are taught 10 = 8 + 2, not 10 = (+ 8
: > 2).

: There's nothing wrong with 2+2, but when you get 13 different operators


: and 15 different preference levels, most people's (except those of the dorks on
: standards committees) eyes glaze over. If you also have _functional arguments_,
: then infix notation completely breaks down. Parentheses, when accompanied
: by an editor that understands pretty-printing, are extremely easy to parse,
: both by machine and by eye.

: > From high school, you learn how to prove mathematical theorems procedually.

: I'm sorry, but most mathematics is recursive. I'm afraid you've been taught


: math by someone whose brain has been fried by Basic and/or Fortran.

: > Basically, a procedural language is more "natural" than a symbolic one.


: > When I taught Scheme in school, it takes a good 2 weeks just to get the
: > recursive part into their heads.

: I've taught students both from 'iterative' and 'recursive' languages. Believe

Peter S. Housel

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

> #\Erik
> --
> my other car is a cdr
>

MY other CAR is a CADR. CDR isn't a CAR at all.

-Peter S. Housel- hou...@ms7.hinet.net


Cyber Surfer

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

With a mighty <3306493...@news.demon.co.uk>,
ala...@abwillms.demon.co.uk wibbled into the void...

> If you've a PC, try the free DJGPP compiler and the RHIDE IDE. Based
> on Borland's IDE, with syntax highlighting and three kinds of brace
> mathcing - (), {}, []!

Thanks, but right now all my C++ development is done in MS Developer
Studio and VC++. Perhaps if RHIDE can read the same docs as Developer
Studio, it might be more interesting, but I can't change the compiler.

Eventually, I'll get around to reinstalling GNU C/C++. I've only just
upgraded NT, and there's a whole list of software to reinstall.

Anyway, thanks. I'll take a look at RHIDE when I can.

Cyber Surfer

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

With a mighty <30651328...@naggum.no>,

er...@naggum.no wibbled into the void...

> _all_ professional markets are small. I expect every professional to be an


> expert in his field. novices should go to school. experts have graduated
> and passed the equivalent of bar exams and review boards.

Ideally, yes. In practice, this rarely happens. A lot of programmers
will learn "on the job". While they may fail to qualify as
"professional", by your definition, most people probably won't notice.
That doesn't mean that I'm disagreeing with you, just pointing out
that a great many others _might_. I gues nobody wants to admit that
they employ "unprofessional" programmers, dispite the evidence to the
contrary (bugs, crashes, etc).

I'd hesitate to call someone "unprofessional" for choosing C++, but
not because I believe C++ to adequate. No, I simply acknowledge the
necessity for programmers to work, the high degree of ignorance within
this industry, and the inability of every programmer to do something
about it. It might not be the programmers who are ignorant of the
failings of C++, but the managers.

Not that I'd like to excuse anyone for the folly of choosing C++. I
just note how hard it can be to convince non-programmers that C++ is
the _wrong_ choice, when so many (marketing) people claim otherwise.
The high availability of "C++ solutions" to common problems doesn't
help much, either.

Perhaps addressing those same problem domains in Lisp could help tip
the balance in favour of Lisp. I've already suggested adding support
for ActiveX to Lisps for Windows, which would give those Lisps the
same leverage as C++ - pick a component that does what you need, plug
it into your app, and most of the job has been done.

> | Of course, a few of us will be fortunate enough to never have to use
> | consumer products.
>
> what are you talking about? are you a professional in every field of your
> life? I only have time for one profession and dabbling in a few others.

Did you not detect the irony in that statement? I guess not.



> I'm positively _delighted_ that I can buy consumer products so cheaply and
> so conveniently, but -- get this -- I'm not in the business of making
> microwave ovens or wine glasses or books or speakers, but I _do_ expect
> those who _are_ to have professional tools, so I can buy consumer goods
> inexpensively with moderately high quality. I don't _want_ Joe Blows'
> Homemade Microwave Oven, OK?

Exactly. I totally agree with you.



> I want "programmer" to be a professional title, with all the expectations
> that come with it.

Same here. We're just heavily outnumbered. The demand for code seems
to "justify" the cowboy solutions, like C++. I'm totally disgusted by
what's available, but consider why these solutions are so popular.
They may not work well, but they _do_ work. Like the talking dog...

Sadly, that's "good enough" for most people. Esp if they have to pay
more for a better product. Given a choice, the bean counters will
choose a product that barely works, but is sold cheaper than anything
else. Being "professional" has nothing to do with it.



> | I just don't believe that Lisp should be denied to anyone based on their
> | _existing_ (lack of) skills.
>
> to ask a rhetorical question first: why not? I'm moderately skilled in the
> legal, medical, and veterinary professions, and I can discuss any issue I
> might want to understand more fully with professionals and students in
> these fields, but I hope I would be prosecuted if were to sell any such
> services to the general public. in contrast, any goddamn idiot can call
> himself a programmer.

Lisp isn't a service, it's a tool. You might just as well demand to
license programming, like doctoring. I'd be happy if this were so, but
it's not. Instead, programmers are like car mechanics - who have a
very dodgy reputation in the country where I live. Nobody likes it,
but what do they do about it? So far, nothing like the fuss that gets
made when a doctor makes mistake.

So, I agree with you! Make programming a professional career, complete
with all the safeguards that apply to the medical profession. Then we
might see a few programmers in court, for negligence.



> I believe in professions. I really _like_ being able to trust my lawyer,
> my doctor, and my cat's vet. for that matter, I really _like_ to trust
> whoever approves the quality of the food I buy, too. but can I _trust_
> somebody who calls himself a "programmer"?

The answer to that is, unfortunately, no. This is a general problem.
As I said, it also applies to car mechanics - and cars have been known
to kill a few people. A computer can be just as deadly, if it's given
dangerous hardware to control, and then _trusted_. We're trusting the
car mechanic and the programmer of the car's software not to screw up.



> I don't want to deny Lisp to anybody. you can buy a pack of scalpel blades
> and lots of medical equipment at well-stocked drugstores if not directly
> from the importer or vendor, but you don't become a doctor because you can
> buy his tools! neither does a surgeon get his tools from K-Mart.

So, this has nothing to do with Lisp, specifically? A C++ is just as
available, perhaps more so as it might well cost less money. This is
about trusting someone in possesion of a tool, not the tool itself.
I'm not sure that Lisp is any more or less safe or dangerous than any
other programming language, in this respect. Lisp can help us avoid
certain kinds of bugs, but no language can prevent a careless
programmer from creating a bug.

This sounds like an argument for licensing the right call yourself a
professional programmer, and I have no problem with that. Remember me
saying that we were agreeing? I'm just unsure how we convince the
world that this is worth doing, tho I might start by suggesting that
everyone read the RISKS mailing list (digest in comp.risks).



> | Of course, if you think that Lisp shouldn't be used to write consumer
> | software, then just say so. There's no need to slag off such people
> | for being what they are. We'll understand you without the politics.
>
> christ! please try to listen to what I say, will you? I want quality
> languages to be used to write software _everywhere_, I just don't buy your
> bogus argument that if the consumer can't use those languages himself, then
> nobody else should be allowed to write in them, either. (at least that's
> the message I'm getting from you, and you have been repeating it for many
> months, now.)

Thanks for clarifing your point of view. Please let me clarify _my_
point of view. I didn't say that "that if the consumer can't use those

languages himself, then nobody else should be allowed to write in

them, either." I'm simply interested in making quality tools available
to anyone who wants them, and reducing the level of ignorance about
such tools.



> what makes me nervous about the future is that unskilled people who are as
> likely to kill or maim information as to heal it are entrusted with our
> past (i.e., accurate records), with critical information for decisions that
> affect lives and careers, and with all kinds of other information too
> difficult or too voluminous to let people handle directly. our society is
> totally dependent on the accuracy of its information. we entrust that
> accuracy to unskilled labor and household-grade tools. that would be like
> doing open heart surgery on your living-room table with only kitches
> utensils. (I use the proper medical equipment on the dead animals I get,
> because kitchen utensils aren't fit for the job at all.)

"Car mechanics - Don't let 'em touch your car!" Wouldn't it be great
if people followed this advise? Of course, it won't happen soon.
Instead, people will continue to grip and complain about shodding
work, and yet still go back for more.

Y'see, I agree with you, Erik! This is why I'd like to see a Lisp
targetted at the programmers who are currently using those shoddy
tools, like VC++ and VB. Unfortunately, that may mean creating a Lisp
that looks a little more like VC++ and VB, in the sense that it might
use a similar IDE. This is the approach that Borland took with Delphi,
but Pascal is barely any better than C++ or Basic. Imagine what we
could do with a "Visual Lisp"? The idea may seem ugly, but it could be
the way to get quality tools into the hands of these programmers.

However, the real problem is one of education. We have to convince
people that being professional is worth it, and _then_ offer Lisp as a
more professional tool for programming. What's the best way to do
this? That may be debatable, but I like the idea of just writing
software, creating apps, and then saying, "This is how I did it!" The
answer that I get is "That won't do, it costs too much", but perhaps
not everyone will be so unlucky. If you can avoid the bean counters,
or find a Lisp that competes with C++ in terms of the purchase price
(bean counters ignore the other costs, of course), then you may have a
chance of using Lisp to write Windows software, i.e. consumer apps.

Alternately, just use a Mac and write code in MCL.

Richard A. O'Keefe

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

Sin-Yaw Wang <sin...@acm.org> writes:
>Basically, a procedural language is more "natural" than a symbolic one.

Whoa there! Lisp *is* a procedural language!
There have been *lots* of languages that are *both* symbolic *and*
procedural. Lisp, Pop-2, SAIL, ..

>When I taught Scheme in school, it takes a good 2 weeks just to get the
>recursive part into their heads.

Well, when teacher X teaches subject Y to students Z, any difficulties
found *could* be due to
- Z being dumb
- Y being hard
- X being a poor teacher
- a heat wave that year
- various combinations of the above...
If the teacher thinks recursion is hard, the students will learn that
recursion is hard. If the teacher thinks recursion is no big deal,
and the students haven't been brainwashed by a bad teacher before,
the students will learn that recursion is no big deal.

Scheme isn't the only recursive language in the world, you know.
C has a "recursive part" too. So does PL/I. So does Fortran.
So does Java. Where are the people doom-crying Java because it
is recursive?

>If it is less natural, it is less productive, statistically speaking.

This is a mere assertion with no foundation whatsoever.
If you want to speak statistically, provide statistics.

Face it: programming is not a natural art. We don't expect everyone
to be a concert pianist. We don't expect everyone to be an Academy
painter. We don't expect everyone to master tensor calculus (which
isn't actually all that hard). If it comes to that, arguing soundly
is not natural, and many people never learn the art. Predicate
calculus is by *far* less natural than prefix syntax. There are
quite a few VSO human languages, where "is-greater X than Y" is the
way to go instead of the "unnatural" "X is-greater-than Y" (unnatural
for _them_). You cannot be a good programmer without understanding
the predicate calculus.


>Companies lose using a less productive tool.
>It is a Darwinian selective process.

Hmm. Experiments have shown C to be substantially less productive than
Ada. I would be thrilled to the very socks to hear that a Darwinian
selective process was eliminating C in favour of Ada.

What matters to a company is not its productivity but its profits.
This depends on
- the difficulty of the tasks being undertaking
- productivity
- price of labour
- what the product sells for
- size of market.
Productivity is only one of *many* factors. The continued survival of
C and C++ demonstrates conclusively that "naturalness" of a language
has very little to do with the survival of companies that use it.

*Connectivity* is more important than naturalness for many many programmers.

--
limits on the scope of cooperation are often due to the inability
to recognise the identity or the acts of the other playes. --R.Axelrod
Richard A. O'Keefe; http://www.cs.rmit.edu.au/%7Eok; RMIT Comp.Sci.

Rainer Joswig

unread,
Feb 17, 1997, 3:00:00 AM2/17/97
to

In article <Pine.LNX.3.91.97021...@sigil.wwe.net>, Teunis
Peters <snow...@comfo.ca> wrote:

> So, where do we start to make LISP a visible success?

Do work in some project that advances Lisp.
There are a lot of people in the Scheme and CL community
with interesting ideas/projects.

> Personally, I don't know. If proprietary projects are what caused LISP's
> failure -- what other choices are there? I mean, following Common Lisp's
> standard is a good place to start [but I'm primarily a VR programmer -
> and there's naught for standard VR in LISP].

What is VR? "Virtual Reality"?

> I'm building a LISP engine... Both compiler/interpreter (actually - it
> compiles dynamically dependant on available CPU cycles [sorta]).
> I'm building it in C, 'cause I need a good assembly language and I don't
> plan on only running it on an x86 processor.
>

> Is there some kind of SIMPLE place for me to start? Someplace
> incremental to begin? (such as the original LISP engine).
> - NOT written in LISP. I DON'T have a runnable LISP engine!
> - well... okay, maybe. Just keep it small....

We already have enough Lisp implementations.
Better start using an existing one (for example CMU CL) and
work with that.

> I need information. I have NO access anywhere except online (am on
> welfare basically - not fun). Any pointers would be appreciated.

see http://www.lavielle.com/~joswig/lisp.html for a start. ;-)

The ALU will set up an interesting site soon (hopefully).

Rainer Joswig

--
http://www.lavielle.com/~joswig/