From: Fernando
Subject: Expert systems in Lisp
Date: 
Message-ID: <15l251ps5oll7o8ial487er7ebf38onu3l@4ax.com>
Hi,

While googling for information on expert systems implemented in Lisp,
I found a review of "Introduction to Expert Systems" by Peter Jackson:
http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm

I has many pearls of wisdom, but my favorites are:

"Expert systems today are not implemented in LISP; it is much too low
level and inefficient a language."

This one is great too:

"With molecular and quantum computing on the horizon, it will be
interesting to see which of these techniques are adapted, and which,
like LISP, are eventually abandoned."

Oh dear.. ;-)

From: A.L.
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <ibm25196a6sjhs0hemseql3ni21gnvdphq@4ax.com>
On Mon, 04 Apr 2005 16:58:23 +0200, Fernando  <···@easyjob.net> wrote:

>Hi,
>
>While googling for information on expert systems implemented in Lisp,
>I found a review of "Introduction to Expert Systems" by Peter Jackson:
>http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
>
>I has many pearls of wisdom, but my favorites are:
>
>"Expert systems today are not implemented in LISP; it is much too low
>level and inefficient a language."
>
>This one is great too:
>
>"With molecular and quantum computing on the horizon, it will be
>interesting to see which of these techniques are adapted, and which,
>like LISP, are eventually abandoned."
>
>Oh dear.. ;-)

Of course, he is wrong. The majority of expert and non-expert systems
are obviously written in Lisp. Lisp has gained worldwide acceptance,
and there is no way to get a job not having Lisp on resume.

A.L.
From: Kenny Tilton
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <aGd4e.107728$534.13220@twister.nyc.rr.com>
Fernando wrote:
> Hi,
> 
> While googling for information on expert systems implemented in Lisp,
> I found a review of "Introduction to Expert Systems" by Peter Jackson:
> http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
> 
> I has many pearls of wisdom, but my favorites are:
> 
> "Expert systems today are not implemented in LISP; it is much too low
> level and inefficient a language."
> 
> This one is great too:
> 
> "With molecular and quantum computing on the horizon, it will be
> interesting to see which of these techniques are adapted, and which,
> like LISP, are eventually abandoned."
> 
> Oh dear.. ;-)
> 

A fuller excerpt is not so bad:

"If you are a collector of programming languages, reading this book may 
turn on a light for you. As you read, you get a sense that some 
programming constructs, such as Smalltalk's "frames," didn't just 
materialize out of thin air. They may have been inspired by problems in 
AI. In this regard, the book includes an interesting chapter on the LISP 
programming language, one of the earliest AI languages. Expert systems 
today are not implemented in LISP; it is much too low level and 
inefficient a language. LISP is significant, though, because it so 
clearly embodies the concepts of symbolic processing, and symbolic 
processing is at the heart of many things AI. For experimenters, the 
book also describes a LISP-like language called CLIPS. This language is 
freely available from a Web site mentioned in the book."

There is no such thing as bad publicity. :)

kt

-- 
Cells? Cello? Cells-Gtk?: http://www.common-lisp.net/project/cells/
Why Lisp? http://lisp.tech.coop/RtL%20Highlight%20Film

"Doctor, I wrestled with reality for forty years, and I am happy to 
state that I finally won out over it." -- Elwood P. Dowd
From: Ulrich Hobelmann
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <3begrnF6fa909U2@individual.net>
Kenny Tilton wrote:
> A fuller excerpt is not so bad:
> 
> ...
> programming language, one of the earliest AI languages. Expert systems 
> today are not implemented in LISP; it is much too low level and 
> inefficient a language.
> ...
> 
> There is no such thing as bad publicity. :)

Still the low level and inefficient is such a stupid claim, that I 
almost think he wants to troll and has never ever had a real idea 
what CL *is*.
From: R. Mattes
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <pan.2005.04.05.10.24.23.609827@mh-freiburg.de>
On Mon, 04 Apr 2005 23:00:58 -0500, Ulrich Hobelmann wrote:

> Kenny Tilton wrote:
>> A fuller excerpt is not so bad:
>> 
>> ...
>> programming language, one of the earliest AI languages. Expert systems 
>> today are not implemented in LISP; it is much too low level and 
>> inefficient a language.
>> ...
>> 
>> There is no such thing as bad publicity. :)
> 
> Still the low level and inefficient is such a stupid claim, that I 
> almost think he wants to troll and has never ever had a real idea 
> what CL *is*.

Well, is it? The author might understand "low level" and "inefficient"
rather different from you. Compared to domain specific languages and
modern expert system shells "raw" LISP _is_ in fact low level. 
Inefficient? Probably depends on the implementation. Expert systems can
easily have a tendency to cons a lot. Performance _is_ one major concern
of AI systems - a lot of the sweet'n-nice programs from the academic world
don't scale that well. The author might not be aware of systems that have
been hand tailored for performance (doesn't Allegro really advertise 
'non-consing' as a special feature of their knowledge system?).

Cheers Ralf Mattes 
 
From: Ulrich Hobelmann
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <3bg8anF6i3bofU1@individual.net>
R. Mattes wrote:
> Well, is it? The author might understand "low level" and "inefficient"
> rather different from you. Compared to domain specific languages and
> modern expert system shells "raw" LISP _is_ in fact low level. 

I wouldn't consider a language where you can write syntax like 
"loop" yourself low-level.  Everything else domain-specific can 
like-wise be integrated into Lisp.  You could even write a macro 
that takes a completely abstract argument (like a syntax-spec) and 
compiles it into lisp code (like a parser).

DSLs are low-level, since they might not scale up or down to your 
needs.

> Inefficient? Probably depends on the implementation. Expert systems can
> easily have a tendency to cons a lot. Performance _is_ one major concern
> of AI systems - a lot of the sweet'n-nice programs from the academic world
> don't scale that well. The author might not be aware of systems that have
> been hand tailored for performance (doesn't Allegro really advertise 
> 'non-consing' as a special feature of their knowledge system?).

Is consing really that expensive?  I would think in a copying 
generational collector a cons should be negligible.
Anyway, you can always write code that uses vectors instead of 
lists, and turn off all runtime checking.
From: Christopher C. Stacy
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <uis31kkn3.fsf@news.dtpq.com>
Ulrich Hobelmann <···········@web.de> writes:
> Is consing really that expensive?

It was, two decades ago, when computers didn't have any memory,
which is when these concerns were raised.
From: Fernando
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <tu8551ll1qpvntoj67m8v5og29q5k6m52o@4ax.com>
On Tue, 05 Apr 2005 12:24:24 +0200, "R. Mattes" <··@mh-freiburg.de>
wrote:


>> Still the low level and inefficient is such a stupid claim, that I 
>> almost think he wants to troll and has never ever had a real idea 
>> what CL *is*.
>
>Well, is it? The author might understand "low level" and "inefficient"
>rather different from you. 

You need a rather peculiar understanding of 'low level' to apply it to
lisp (and then recommend C++).

This was the first time I saw someone bashing lisp for being too "low
level".
From: Thomas A. Russ
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <ymibr8txhc9.fsf@sevak.isi.edu>
Fernando  <···@easyjob.net> writes:

> This was the first time I saw someone bashing lisp for being too "low
> level".

But it's only got cons cells as a data structure....

-- 
Thomas A. Russ,  USC/Information Sciences Institute
From: Ulrich Hobelmann
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <3bg8c0F6i3bofU2@individual.net>
Thomas A. Russ wrote:
> Fernando  <···@easyjob.net> writes:
> 
> 
>>This was the first time I saw someone bashing lisp for being too "low
>>level".
> 
> 
> But it's only got cons cells as a data structure....
> 

No.
From: R. Mattes
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <pan.2005.04.05.16.21.51.771425@mh-freiburg.de>
On Tue, 05 Apr 2005 16:44:45 +0200, Fernando wrote:

> On Tue, 05 Apr 2005 12:24:24 +0200, "R. Mattes" <··@mh-freiburg.de>
> wrote:
> 
> 
>>> Still the low level and inefficient is such a stupid claim, that I 
>>> almost think he wants to troll and has never ever had a real idea 
>>> what CL *is*.
>>
>>Well, is it? The author might understand "low level" and "inefficient"
>>rather different from you. 
> 
> You need a rather peculiar understanding of 'low level' to apply it to
> lisp (and then recommend C++).

Fernando, i don't see where the reviewer claims that C++ is more "high
level" than Lisp. Actually, looking at the online review i don't even see
C++ _mentioned_ on the page. Please be a bit more careful in attributing
statements to people. 

> This was the first time I saw someone bashing lisp for being too "low
> level".

Well, it's never too late :-) To me it looks as if the reviewer draws his
conclusions from, gosh, reading the book: MYCIN most likely was an
impressive system back when it was written but surely not  what I'd call
a highly optimized Lisp program. Maybe the reviewer has some experience
with earlier expert systems (or similar AI systems). Representing frames
as symbol properties might look like a neat trick but might also
not result in too impressive performance?

 Cheers RalfD  
From: Matthias
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <36w4qempl3l.fsf@hundertwasser.ti.uni-mannheim.de>
Fernando  <···@easyjob.net> writes:

> Hi,
> 
> While googling for information on expert systems implemented in Lisp,
> I found a review of "Introduction to Expert Systems" by Peter Jackson:
> http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
> 
> I has many pearls of wisdom, but my favorites are:
> 
> "Expert systems today are not implemented in LISP; it is much too low
> level and inefficient a language."
> 
> This one is great too:
> 
> "With molecular and quantum computing on the horizon, it will be
> interesting to see which of these techniques are adapted, and which,
> like LISP, are eventually abandoned."

Your citations seem to be from the review, not necessarily from the
book. The author of the review is Marc Briand, former editor of C/C++
Users Journal.
From: Fernando
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <kc13515jk39kvb3u6tma03e3dvkf7k4nvp@4ax.com>
On 04 Apr 2005 18:23:10 +0200, Matthias <····@spam.pls> wrote:


>> "With molecular and quantum computing on the horizon, it will be
>> interesting to see which of these techniques are adapted, and which,
>> like LISP, are eventually abandoned."
>
>Your citations seem to be from the review, not necessarily from the

Yes, they are from the review and not the book.

>book. The author of the review is Marc Briand, former editor of C/C++
>Users Journal.

Hhhmm... OK, I guess that's a good excuse. ;-)
From: Ulrich Hobelmann
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <3beh19F6fa909U3@individual.net>
Matthias wrote:
>>"Expert systems today are not implemented in LISP; it is much too low
>>level and inefficient a language."
> 
> Your citations seem to be from the review, not necessarily from the
> book. The author of the review is Marc Briand, former editor of C/C++
> Users Journal.

Ah, that clears it up :)

Of course CL is totally low level and inefficient when compared to 
C++, the shining star of modern technology and commitee design.

C++ is very high level and efficient.  Generic types implemented 
with templates, for instance, only need to be compiled n times for 
n instantiations.
From: Paolo Amoroso
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <87psxaqzmq.fsf@plato.moon.paoloamoroso.it>
Fernando  <···@easyjob.net> writes:

> While googling for information on expert systems implemented in Lisp,

This is a very nice production rule language written in Common Lisp:

  Lisa
  http://lisa.sourceforge.net

I found these books useful, especially the first (Lisa is very similar
to CLIPS, described in the book):

  Expert Systems - Principles and Programming
  J. Giarratano, G. Riley
  PWS Publishing Company

  Programming Expert Systems in OPS5
  An Introduction to Rule-Based Programming
  L. Brownston, R. Farrell, E. Kant, N. Martin
  Addison-Wesley, 1985

I checked other interesting expert systems books, but the above
mentioned ones provide the best coverage of programming and practical
issues.


> I found a review of "Introduction to Expert Systems" by Peter Jackson:
> http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
>
> I has many pearls of wisdom, but my favorites are:

The reviewer also writes:

  One thing this book does not do is give a clear indication of how
  expert systems have fared commercially, or how they may fare in the
  future.

I also wondered about that, and I was able to get some answers:

  Expert systems: what happened in the past decade?
  http://www.paoloamoroso.it/log/050309.html


Paolo
-- 
Why Lisp? http://lisp.tech.coop/RtL%20Highlight%20Film
Recommended Common Lisp libraries/tools (see also http://clrfi.alu.org):
- ASDF/ASDF-INSTALL: system building/installation
- CL-PPCRE: regular expressions
- UFFI: Foreign Function Interface
From: Tim X
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <87mzsexldr.fsf@tiger.rapttech.com.au>
Fernando  <···@easyjob.net> writes:

> Hi,
>
> While googling for information on expert systems implemented in Lisp,
> I found a review of "Introduction to Expert Systems" by Peter Jackson:
> http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
>
> I has many pearls of wisdom, but my favorites are:
>
> "Expert systems today are not implemented in LISP; it is much too low
> level and inefficient a language."
>
> This one is great too:
>
> "With molecular and quantum computing on the horizon, it will be
> interesting to see which of these techniques are adapted, and which,
> like LISP, are eventually abandoned."
>
> Oh dear.. ;-)
>
This sounds 'old' - the same arguments I was given back in about
'91. Its been a long time between drinks and I'm not sure how expert
systems have progressed since then, but back then, research into
expert systems tended to use a language called IIRC CLIPS, which
essentially was a 'convenience' language for writing expert system
'rules' which were then evaluated by a rules engine - from memory, it
was very 'lispish' in that I think the engine itself was quite lisp
like. The other language often used was Prolog, but this could be more
geographic than anything (europe/uk tended to use prolog wherer us
tended to use lisp). 

I actually encountered those same sort of arguments only a couple of
weeks ago. One of the systems we administer at work is a timetableing
system written in lisp. Apparently the original system was someone's
PhD thesis which was then taken by a company who did some really
appauling C++ code around the system to try and make it support
multiple users. somebody said to me, "You know the problem with this
system is that it was written in an archaic language called lisp." I
attempted to point out that the only part of the system which worked
well was the lisp part and it was the C++ wrapper which causes the
most problems. They were not prepared to listen. 

Tim 


-- 
Tim Cross
The e-mail address on this message is FALSE (obviously!). My real e-mail is
to a company in Australia called rapttech and my login is tcross - if you 
really need to send mail, you should be able to work it out!
From: Camm Maguire
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <54hdilq7v6.fsf@intech19.enhanced.com>
Greetings!

Fernando  <···@easyjob.net> writes:

> Hi,
> 
> While googling for information on expert systems implemented in Lisp,
> I found a review of "Introduction to Expert Systems" by Peter Jackson:
> http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
> 
> I has many pearls of wisdom, but my favorites are:
> 
> "Expert systems today are not implemented in LISP; it is much too low
> level and inefficient a language."
> 
> This one is great too:
> 
> "With molecular and quantum computing on the horizon, it will be
> interesting to see which of these techniques are adapted, and which,
> like LISP, are eventually abandoned."
> 
> Oh dear.. ;-)
> 

I thought this (from the clips website) was interesting:

  The origins of the C Language Integrated Production System (CLIPS)
  date back to 1984 at NASA's Johnson Space Center. At this time, the
  Artificial Intelligence Section had developed over a dozen prototype
  expert systems applications using state-of-the-art hardware and
  software. However, despite extensive demonstrations of the potential
  of expert systems, few of these applications were put into regular
  use. This failure to provide expert systems technology within NASA's
  operational computing constraints could largely be traced to the use
  of LISP as the base language for nearly all expert system software
  tools at that time. In particular, three problems hindered the use of
  LISP based expert system tools within NASA: the low availability of
  LISP on a wide variety of conventional computers, the high cost of
  state-of-the-art LISP tools and hardware, and the poor integration of
  LISP with other languages (making embedded applications difficult).


Certainly looks like some early lisp vendors pulled a real number on
the language.  If only lisp were more open earlier on.  Sad thing is,
once people leave, even if it is for vendor issues rather than
language issues, there is often too much inertia to consider coming
back.

GCL has the portability and cost issue down at present, has a great C
ffi, and can be made embeddable with little effort.  It might be
interesting to see how lisa would work compared to clips, but I have
no expert system application with which to test.

Take care,
-- 
Camm Maguire			     			····@enhanced.com
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
From: Ronald Kirk Kandt
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <d2uvlo$qb0$1@nntp1.jpl.nasa.gov>
Re: "In particular, three problems hindered the use of
LISP based expert system tools within NASA: the low availability of
LISP on a wide variety of conventional computers, the high cost of
state-of-the-art LISP tools and hardware, and the poor integration of
LISP with other languages (making embedded applications difficult)."

Just because someone makes a statement, doesn't mean its true. During the 
time that the following comment was made, John Allen had a small and fast 
implementation of Lisp that ran on PCs. I was part of a team that used it 
and Z80s to do distributed AI (1980). Similarly, DEC VAX/VMS and PDP-10 and 
20 implementations were widespread. I was part of a usability assessment 
team of a Lisp implementation by IBM in 1986 for its mainframes. In 1984 
when I was at Xerox, we produced Dandelions for $10-12K. You could get LISP 
on most everything except maybe Apples and rad-hard machines. Similarly, 
there were lots of good (and free) AI tools out there -- too numerous to 
mention. However, ART was expensive and is what NASA/JSC was using. Hence, 
they based the development of CLIPS on ART. I have never used a version of 
Lisp that didn't talk to C; at least not since 1975. The distributed AI 
system I mentioned earlier had its path planning algorithms all written in 
C, callable by LISP. The bottom-line is one might claim that every language 
has difficulty communicating with most languages -- even today.

In sum, beware what you read. The "three weaknesses of Lisp" were unique to 
a specific operational environment, whose personnel might not have been 
aware of alternatives, but more importantly had already made a significant 
investment in a specific set of technologies. Their criticism of those 
specific technologies may have been valid for their unique circumstances.

"Camm Maguire" <····@enhanced.com> wrote in message 
···················@intech19.enhanced.com...
> Greetings!
>
> Fernando  <···@easyjob.net> writes:
>
>> Hi,
>>
>> While googling for information on expert systems implemented in Lisp,
>> I found a review of "Introduction to Expert Systems" by Peter Jackson:
>> http://www.unixreview.com/documents/s=2426/uni1018362103040/0204f.htm
>>
>> I has many pearls of wisdom, but my favorites are:
>>
>> "Expert systems today are not implemented in LISP; it is much too low
>> level and inefficient a language."
>>
>> This one is great too:
>>
>> "With molecular and quantum computing on the horizon, it will be
>> interesting to see which of these techniques are adapted, and which,
>> like LISP, are eventually abandoned."
>>
>> Oh dear.. ;-)
>>
>
> I thought this (from the clips website) was interesting:
>
>  The origins of the C Language Integrated Production System (CLIPS)
>  date back to 1984 at NASA's Johnson Space Center. At this time, the
>  Artificial Intelligence Section had developed over a dozen prototype
>  expert systems applications using state-of-the-art hardware and
>  software. However, despite extensive demonstrations of the potential
>  of expert systems, few of these applications were put into regular
>  use. This failure to provide expert systems technology within NASA's
>  operational computing constraints could largely be traced to the use
>  of LISP as the base language for nearly all expert system software
>  tools at that time. In particular, three problems hindered the use of
>  LISP based expert system tools within NASA: the low availability of
>  LISP on a wide variety of conventional computers, the high cost of
>  state-of-the-art LISP tools and hardware, and the poor integration of
>  LISP with other languages (making embedded applications difficult).
>
>
> Certainly looks like some early lisp vendors pulled a real number on
> the language.  If only lisp were more open earlier on.  Sad thing is,
> once people leave, even if it is for vendor issues rather than
> language issues, there is often too much inertia to consider coming
> back.
>
> GCL has the portability and cost issue down at present, has a great C
> ffi, and can be made embeddable with little effort.  It might be
> interesting to see how lisa would work compared to clips, but I have
> no expert system application with which to test.
>
> Take care,
> -- 
> Camm Maguire      ····@enhanced.com
> ==========================================================================
> "The earth is but one country, and mankind its citizens."  --  Baha'u'llah 
From: Sashank Varma
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <1113170584.042928.217560@f14g2000cwb.googlegroups.com>
Ronald Kirk Kandt wrote:

> Similarly,
> there were lots of good (and free) AI tools out there -- too numerous
to
> mention. However, ART was expensive and is what NASA/JSC was using.
Hence,
> they based the development of CLIPS on ART.

Was CLIPS based on ART or on the OPS family of production system
interpreters (e.g., OPS5)? I always thought it was the latter, not the
former, but it sounds like you were there at the very beginning.

(Or was ART based on the OPS family?)
From: Ronald Kirk Kandt
Subject: Re: Expert systems in Lisp
Date: 
Message-ID: <d3e8pg$6qq$1@nntp1.jpl.nasa.gov>
You're right. I misspoke when I said CLIPS was based on ART; it was based on 
OPS. In addition, ART was not based on OPS. Back in the early 80s every 
serious AI group not associated with a university or otherwise a prestigious 
research institution (e.g., XEROX PARC) was using one of KEE, ART, or 
KnowledgeCraft. KnowledgeCraft was sold by the Carnegie Group, and was 
originally built at CMU. Hence, OPS was the rule-based system provided by 
KnowledgeCraft. Since that was so long ago and my memory is fading (I'm 50 
years old now) I now have some doubt that NASA/JSC was using ART; maybe they 
were using KnowledgeCraft instead.
"Sashank Varma" <············@yahoo.com> wrote in message 
·····························@f14g2000cwb.googlegroups.com...
> Ronald Kirk Kandt wrote:
>
>> Similarly,
>> there were lots of good (and free) AI tools out there -- too numerous
> to
>> mention. However, ART was expensive and is what NASA/JSC was using.
> Hence,
>> they based the development of CLIPS on ART.
>
> Was CLIPS based on ART or on the OPS family of production system
> interpreters (e.g., OPS5)? I always thought it was the latter, not the
> former, but it sounds like you were there at the very beginning.
>
> (Or was ART based on the OPS family?)
>