473,714 Members | 2,527 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

BIG successes of Lisp (was ...)

In the context of LATEX, some Pythonista asked what the big
successes of Lisp were. I think there were at least three *big*
successes.

a. orbitz.com web site uses Lisp for algorithms, etc.
b. Yahoo store was originally written in Lisp.
c. Emacs

The issues with these will probably come up, so I might as well
mention them myself (which will also make this a more balanced
post)

a. AFAIK Orbitz frequently has to be shut down for maintenance
(read "full garbage collection" - I'm just guessing: with
generational garbage collection, you still have to do full
garbage collection once in a while, and on a system like that
it can take a while)

b. AFAIK, Yahoo Store was eventually rewritten in a non-Lisp.
Why? I'd tell you, but then I'd have to kill you :)

c. Emacs has a reputation for being slow and bloated. But then
it's not written in Common Lisp.

Are ViaWeb and Orbitz bigger successes than LATEX? Do they
have more users? It depends. Does viewing a PDF file made
with LATEX make you a user of LATEX? Does visiting Yahoo
store make you a user of ViaWeb?

For the sake of being balanced: there were also some *big*
failures, such as Lisp Machines. They failed because
they could not compete with UNIX (SUN, SGI) in a time when
performance, multi-userism and uptime were of prime importance.
(Older LispM's just leaked memory until they were shut down,
newer versions overcame that problem but others remained)

Another big failure that is often _attributed_ to Lisp is AI,
of course. But I don't think one should blame a language
for AI not happening. Marvin Mins ky, for example,
blames Robotics and Neural Networks for that.
Jul 18 '05 #1
303 17663
mi*****@ziplip. com writes:
a. AFAIK Orbitz frequently has to be shut down for maintenance
(read "full garbage collection" - I'm just guessing: with
generational garbage collection, you still have to do full
garbage collection once in a while, and on a system like that
it can take a while)
I'm skeptical that's the reason for the shutdowns, if they're using a
reasonable Lisp implementation.
b. AFAIK, Yahoo Store was eventually rewritten in a non-Lisp.
Why? I'd tell you, but then I'd have to kill you :)
The Yahoo Store software was written by some small company that sold
the business to some other company that didn't want to develop in
Lisp, I thought. I'd be interested to know more.
c. Emacs has a reputation for being slow and bloated. But then
it's not written in Common Lisp.
Actually, Hemlock is much more bloated. However, Emacs's reputation
for bloat came from the 1 mips VAX days, when it was bigger than less
capable editors such as vi. However, compared with the editors people
run all the time on PC's nowadays (viz. Microsoft Word), Emacs is tiny
and fast. In fact if I want to look in a big mail archive for (say)
mentions of Python, it's faster for me to read the file into Emacs and
search for "python" than it is for me to pipe the file through "more"
and use "more"'s search command.
Are ViaWeb and Orbitz bigger successes than LATEX? Do they
have more users? It depends. Does viewing a PDF file made
with LATEX make you a user of LATEX? Does visiting Yahoo
store make you a user of ViaWeb?
I missed the earlier messages in this thread but Latex wasn't written
in Lisp. There were some half-baked attempts to lispify TeX, but
afaik none went anywhere.
For the sake of being balanced: there were also some *big*
failures, such as Lisp Machines. They failed because
they could not compete with UNIX (SUN, SGI) in a time when
performance, multi-userism and uptime were of prime importance.
Well, they were too bloody expensive too.
Another big failure that is often _attributed_ to Lisp is AI,
of course. But I don't think one should blame a language
for AI not happening. Marvin Mins ky, for example,
blames Robotics and Neural Networks for that.


Actually, there are many AI success stories, but the AI field doesn't
get credit for them, because as soon as some method developed by AI
researchers becomes useful or practical, it stops being AI. Examples
include neural networks, alpha-beta search, natural language
processing to the extent that it's practical so far, optical character
recognition, and so forth.
Jul 18 '05 #2
Paul Rubin wrote:
There were some half-baked attempts to lispify TeX, but
afaik none went anywhere.


Tex2page is pretty nice:

http://www.ccs.neu.edu/home/dorai/te...2page-doc.html

Jul 18 '05 #3
On 13 Oct 2003 16:43:57 -0700, Paul Rubin
<http://ph****@NOSPAM.i nvalid> wrote:
mi*****@ziplip .com writes:

b. AFAIK, Yahoo Store was eventually rewritten in a non-Lisp.
Why? I'd tell you, but then I'd have to kill you :)


The Yahoo Store software was written by some small company that sold
the business to some other company that didn't want to develop in
Lisp, I thought. I'd be interested to know more.


In a context like that, my first guess would be "the other company
didn't have any Lisp programmers". The second would be that the
programmers they did have didn't like (their idea of) Lisp.

Assuming there is some truth in that, it would probably have been
rationalised in other terms of course.
Another big failure that is often _attributed_ to Lisp is AI,
of course. But I don't think one should blame a language
for AI not happening. Marvin Mins ky, for example,
blames Robotics and Neural Networks for that.


Actually, there are many AI success stories, but the AI field doesn't
get credit for them, because as soon as some method developed by AI
researchers becomes useful or practical, it stops being AI. Examples
include neural networks, alpha-beta search, natural language
processing to the extent that it's practical so far, optical character
recognition, and so forth.


Absolutely true - and many more.

I have come to believe that cognitive psychologists (of whatever field
- there seems to have been a 'cognitive revolution' in most variants
of psychology) should have some experience of programming - or at
least of some field where their conception of what is possible in
terms of information processing would get some hard testing.

Brains are not computers, of course - and even more important, they
were evolved rather than designed. But then a lot of cognitive
psychologists don't seem to take any notice of the underlying
'hardware' at all. In the field I'm most interested in - autism - the
main cognitive 'theories' are so sloppy that it is very difficult to
pick out the 5% of meaningfullness from the 95% of crud.

Take 'theory of mind', for instance - the theory that autistic people
have no conception that other people have minds of their own. This is
nice and simple at 'level 1' - very young autistics seem not to keep
track of other peoples states of mind when other children of the same
age do, just as if they don't realise that other people have minds of
their own. But the vast majority of autistics pass level 1 theory of
mind tests, at least after the age of about 5.

The cognitive psychologists answer to this is to apply level 2 and
higher theory of mind tests. They acknowledge that these tests are
more complex, but they don't acknowledge that they are testing
anything different. But take a close look and it rapidly becomes
apparent that the difference between these tests and the level 1 tests
is simply the amount of working memory that is demanded.

Actually, you don't have to study the tests to realise that - just
read some of the autistic peoples reactions to the tests. They
*understand* the test, but once the level is ramped up high enough
they can't keep track of everything they are expected to keep track
of. It's rather like claiming that if you can't simultaneously
remember 5000 distinct numbers you must lack a 'theory of number'!

But when autistic people have described things that suggest they have
'theory of mind' (e.g. Temple Grandin), the experts response has
typically been to suggest that either the auther or her editor is a
liar (e.g. Francesca Happé, 'the autobiographica l writings of three
Asperger syndrome adults: problems of interpretation and implications
for theory', section in 'Autism and Asperger Syndrome' edited by Uta
Frith).

It's not even as if the 'theory of mind' idea has any particular
predictive power. The symptoms of autism vary dramatically from one
person to another, and the distinct symptoms vary mostly independently
of one another. Many symptoms of autism (e.g. sensory problems) have
nothing to do with awareness of other people.

The basic problem, of course, is that psychologists often lean more
towards the subjective than the objective, and towards intuition
rather than logic. It is perhaps slightly ironic that part of my own
theory of autism (integrating evolutionary, neurological and cognitive
issues) has as a key component an IMO credible answer to 'what is
intuition, how does it work, and why is (particularly social)
intuition disrupted in autism?'

But despite all this, it is interesting to note that cognitive
psychology and AI have very much the same roots (even down to mainly
the same researchers in the early days) and that if you search hard
enough for the 'good stuff' in psychology, it doesn't take long before
you start finding the same terms and ideas that used to be strongly
associated with AI.

Creating a machine that thinks like a person was never a realistic
goal for AI (and probably won't be for a very long time yet), but that
was always the dreaming and science fiction rather than the fact. Even
so, it is hard to think of an AI technique that hasn't been adopted by
real applications.

I remember the context where I first encountered Bayes theorem. It was
in AI - expert systems, to be precise - along with my first encounter
with information theory. The value of Bayes theorem is that it allows
an assessment of the probability of a hypothesis based only on the
kinds of information that can be reasonably easily assessed in
studies, approximated by a human expert, or even learned by the expert
system in some contexts as it runs. The probability of a hypothesis
given a single fact can be hard to assess, but a good approximation of
the probability of that fact given the hypothesis is usually easy to
assess given a simple set of examples.

Funny how a current popular application of this approach (spam
filtering) is not considered to be an expert system, or even to be AI
at all. But AI was never meant to be in your face. Software acts more
intelligently these days, but the methods used to achieve that are
mostly hidden.
--
Steve Horne

steve at ninereeds dot fsnet dot co dot uk
Jul 18 '05 #4
In article <7x************ @ruckus.brouhah a.com>, Paul Rubin
<http://ph****@NOSPAM.i nvalid> wrote:
The Yahoo Store software was written by some small company
Viaweb
that sold the business to some other company
Yahoo (obviously).
that didn't want to develop in
Lisp, I thought.


That's right. Yahoo ultimately reimplemented Yahoo Store in C++.

E.
Jul 18 '05 #5
ga*@jpl.nasa.go v (Erann Gat) writes:
In article <7x************ @ruckus.brouhah a.com>, Paul Rubin
<http://ph****@NOSPAM.i nvalid> wrote:
The Yahoo Store software was written by some small company


Viaweb
that sold the business to some other company


Yahoo (obviously).
that didn't want to develop in Lisp, I thought.


That's right. Yahoo ultimately reimplemented Yahoo Store in C++.


Of course to do so, they had to--according to Paul Graham--implement a
Lisp interpreter in C++! And they had to leave out some features that
depended on closures. So folks who are running the old Lisp version
may never "upgrade" to the new version since it would mean a
functional regression. Graham's messages on the topic to the ll1 list
are at:

<http://www.ai.mit.edu/~gregs/ll1-discuss-archive-html/msg02380.html>
<http://www.ai.mit.edu/~gregs/ll1-discuss-archive-html/msg02367.html>

-Peter

--
Peter Seibel pe***@javamonke y.com

Lisp is the red pill. -- John Fraser, comp.lang.lisp
Jul 18 '05 #6


Peter Seibel wrote:
ga*@jpl.nasa.go v (Erann Gat) writes:

In article <7x************ @ruckus.brouhah a.com>, Paul Rubin
<http://ph****@NOSPAM.i nvalid> wrote:

The Yahoo Store software was written by some small company


Viaweb

that sold the business to some other company


Yahoo (obviously).

that didn't want to develop in Lisp, I thought.


That's right. Yahoo ultimately reimplemented Yahoo Store in C++.

Of course to do so, they had to--according to Paul Graham--implement a
Lisp interpreter in C++!


I hope he made another $40m off them in consulting fees helping them
with the port. :)

--
http://tilton-technology.com
What?! You are a newbie and you haven't answered my:
http://alu.cliki.net/The%20Road%20to%20Lisp%20Survey

Jul 18 '05 #7
mi*****@ziplip. com writes:
In the context of LATEX, some Pythonista asked what the big
successes of Lisp were. I think there were at least three *big*
successes.

a. orbitz.com web site uses Lisp for algorithms, etc.
b. Yahoo store was originally written in Lisp.
c. Emacs

The issues with these will probably come up, so I might as well
mention them myself (which will also make this a more balanced
post)

a. AFAIK Orbitz frequently has to be shut down for maintenance
(read "full garbage collection" - I'm just guessing: with
generational garbage collection, you still have to do full
garbage collection once in a while, and on a system like that
it can take a while)


You are misinformed. Orbitz runs a `server farm' of hundreds of
computers each running the ITA faring engine. Should any of these
machines need to GC, there are hundreds of others waiting to service
users.
Jul 18 '05 #8
Stephen Horne wrote:
...
I remember the context where I first encountered Bayes theorem. It was
in AI - expert systems, to be precise - along with my first encounter
OK, but Reverend Bayes developed it well before "AI" was even conceived,
around the middle 18th century; considering Bayes' theorem to be part
of AI makes just about as much sense as considering addition in the
same light, if "expert systems" had been the first context in which
you had ever seen numbers being summed. In the '80s, when at IBM
Research we developed the first large-vocabulary real-time dictation
taking systems, I remember continuous attacks coming from the Artificial
Intelligentsia due to the fact that we were using NO "AI" techniques --
rather, stuff named after Bayes, Markov and Viterbi, all dead white
mathematicians (it sure didn't help that our languages were PL/I, Rexx,
Fortran, and the like -- no, particularly, that our system _worked_,
the most unforgivable of sins:-). I recall T-shirts boldly emblazoned
with "P(A|B) = P(B|A) P(A) / P(B)" worn at computational linguistics
conferences as a deliberately inflammatory gesture, too:-).

Personally, I first met Rev. Bayes in high school, together with the
rest of the foundations of elementary probability theory, but then I
did admittedly go to a particularly good high school; neither of my
kids got decent probability theory in high school, though both of
them met it in their first college year (in totally different fields,
neither of them connected with "AI" -- financial economics for my
son, telecom engineering for my daughter).

Funny how a current popular application of this approach (spam
filtering) is not considered to be an expert system, or even to be AI
at all. But AI was never meant to be in your face. Software acts more


I don't see how using Bayes' Theorem, or any other fundamental tool
of probability and statistics, connects a program to "AI", any more
than using fundamental techniques of arithmetic or geometry would.
Alex

Jul 18 '05 #9
>>>>> "mike420" == mike420 <mi*****@ziplip .com> writes:

mike420> c. Emacs has a reputation for being slow and bloated.

People making that claim most often does not understand what Emacs
really is or how to use it effectively. Try to check out what other
popular software use up on such peoples machines, stuff like KDE or
gnome or mozilla or any Java based application.

This just isn't a very relevant issue on modern equipment.

mike420> For the sake of being balanced: there were also some *big*
mike420> failures, such as Lisp Machines. They failed because
mike420> they could not compete with UNIX (SUN, SGI) in a time when
mike420> performance, multi-userism and uptime were of prime importance.

It is still a question of heated debate what actually killed the lisp
machine industry.

I have so far not seen anybody dipsuting that they were a marvel of
technical excellence, sporting stuff like colour displays, graphical
user interfaces and laser printers way ahead of anybody else.

In fact the combined bundle of a Symbolics machine is so good that
there still is a viable market for those 20-30 years old machines
(been there, done that, still needs to get it to run :-) I challenge
you to get a good price for a Sun 2 with UNIX SYSIII or whatever they
were equipped with at the time.

As far as I know Symbolics was trying to address the price issues but
the new generation of the CPU was delayed which greatly contributed to
the original demise and subsequent success of what we now know as
stock hardware. Do not forget that when the Sun was introduced it was
by no means obvious who was going to win the war of the graphical
desktop server.
------------------------+-----------------------------------------------------
Christian Lynbech | christian #\@ defun #\. dk
------------------------+-----------------------------------------------------
Hit the philistines three times over the head with the Elisp reference manual.
- pe*****@hal.com (Michael A. Petonic)
Jul 18 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

73
8036
by: RobertMaas | last post by:
After many years of using LISP, I'm taking a class in Java and finding the two roughly comparable in some ways and very different in other ways. Each has a decent size library of useful utilities as a standard portable part of the core language, the LISP package, and the java.lang package, respectively. Both have big integers, although only LISP has rationals as far as I can tell. Because CL supports keyword arguments, it has a wider range...
699
33973
by: mike420 | last post by:
I think everyone who used Python will agree that its syntax is the best thing going for it. It is very readable and easy for everyone to learn. But, Python does not a have very good macro capabilities, unfortunately. I'd like to know if it may be possible to add a powerful macro system to Python, while keeping its amazing syntax, and if it could be possible to add Pythonistic syntax to Lisp or Scheme, while keeping all of the...
34
2677
by: nobody | last post by:
This article is posted at the request of C.W. Yang who asked me to detail my opinion of Lisp, and for the benefit of people like him, who may find themselves intrigued by this language. The opinions expressed herein are my personal ones, coming from several years of experience with Lisp. I did plenty of AI programming back in the day, which is what would now be called "search" instead.
82
5344
by: nobody | last post by:
Howdy, Mike! mikecoxlinux@yahoo.com (Mike Cox) wrote in message news:<3d6111f1.0402271647.c20aea3@posting.google.com>... > I'm a C++ programmer, and have to use lisp because I want to use > emacs. I've gotten a book on lisp, and I must say lisp is the ugliest > looking language syntax wise. What is up with this: (defun(foo()). (DEFUN FOO () NIL) > What were the lisp authors thinking? Why did Stallman use lisp in
852
28433
by: Mark Tarver | last post by:
How do you compare Python to Lisp? What specific advantages do you think that one has over the other? Note I'm not a Python person and I have no axes to grind here. This is just a question for my general education. Mark
0
9307
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9170
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
9009
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7946
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
4462
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4715
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3155
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
2514
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2105
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.