From: Arthur T. Murray
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <3c57cf17@news.victoria.tc.ca>
Mark Atwood <···@pobox.com> wrote on 30 Jan 2002:
>"Ray" <··········@home.com> writes:
>> "Ray Blaak" <·····@telus.net> wrote in message
>> ···················@blight.transcend.org...
>>
>> [...]
>>
>> > Lisp is the secret weapon of computer science. Learn it and be wise.
>>
>> I heard that said about Forth.
>
> They are both true, but it is truer about Lisp.
>
> If you learn the "Forth way" "correctly", you will grok
> in fullness procedural programming, without getting hung
> up in the irrelevant incidentals of syntax.

And you will grok the workings of the brain for robots at
http://www.scn.org/~mentifex/mind4th.html -- Mind.Forth AI.

>
> But, if you learn Lisp correctly, you can grok *all*
> programming styles with it: procedural, OO, predicate,
> functional, pure or full of side-effects.  Recursion
> will be your friend, function references your allies,
> you will *truly* know what a closure is, and that
> an argument stack is actually a performance hack.

You will be equipped to contribute to the creation of
http://mind.sourceforge.net/lisp.html "AI in LISP".

> You will see that the most elegant way to solve a
> problem is to create a custom language, solve the
> generic problem, and have your specific one fall out
> as a special case.  You will learn to truly separate
> intent from the bare metal, and you will finally
> understand the two deepest secrets, which are really
> the same secret, which we tell all, but so few understand,
> that code and data are the same thing, but organize your
> data and your code will follow.
>
http://www.scn.org/~mentifex/jsaimind.html -- grok the AI Mind.
>
> Programming is a great hobby and a really good career.
>
> But if you want wisdom, if you want to know what it means
> when someone says "elegant", if you want to touch the Magic,
> learn Lisp or Scheme.

http://mind.sourceforge.net/~scheme.html -- Scheme for AI Minds.
>
> Really, really, no kidding or exaggeration.
>
> --
> Mark Atwood   | Well done is better than well said.
> ···@pobox.com |
> http://www.pobox.com/~mra 

From: Ray Dillinger
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <3C582A24.F4F582AF@sonic.net>
"Arthur T. Murray" wrote:

> You will be equipped to contribute to the creation of
> http://mind.sourceforge.net/lisp.html "AI in LISP".

This "AI mind" thing is pathetic.  Better systems existed in 
the fifties, and were considered games or toys then.  Eliza 
is more advanced than this.  Why are you bothering people with 
it today?

				Bear

ObSheesh: followups trimmed to groups remotely interested in 
Lisp.
From: Erik Max Francis
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <3C585820.AFFA219A@alcyone.com>
Ray Dillinger wrote:

> This "AI mind" thing is pathetic.  Better systems existed in
> the fifties, and were considered games or toys then.  Eliza
> is more advanced than this.  Why are you bothering people with
> it today?

Because he's a crank, of course.

-- 
 Erik Max Francis / ···@alcyone.com / http://www.alcyone.com/max/
 __ San Jose, CA, US / 37 20 N 121 53 W / ICQ16063900 / &tSftDotIotE
/  \ Laws are silent in time of war.
\__/ Cicero
    Esperanto reference / http://www.alcyone.com/max/lang/esperanto/
 An Esperanto reference for English speakers.
From: David Feuer
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <a3dl7p$rem$1@saturn.services.brown.edu>
>> But, if you learn Lisp correctly, you can grok *all*
>> programming styles with it: procedural, OO, predicate,
>> functional, pure or full of side-effects.  Recursion
>> will be your friend, function references your allies,
>> you will *truly* know what a closure is, and that
>> an argument stack is actually a performance hack.

Not quite...
You can't grok programming techniques based on complicated static type 
systems.  You will learn to write many kinds of programs, but will not 
learn how to use a type system to guarantee certain aspects of program 
behavior.  Also, has anyone ever tried logic programming in Lisp?

-- 
/Times-Bold 40 selectfont/n{moveto}def/m{gsave true charpath clip 72
400 n 300 -4 1{dup 160 300 3 -1 roll 0 360 arc 300 div 1 1 sethsbcolor
fill}for grestore 0 -60 rmoveto}def 72 500 n(This message has been)m
(brought to you by the)m(letter alpha and the number pi.)m(David Feuer)
m(···········@brown.edu)m showpage
From: Nils Goesche
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <a3drmc$16n387$1@ID-125440.news.dfncis.de>
In article <············@saturn.services.brown.edu>, David Feuer wrote:
>>> But, if you learn Lisp correctly, you can grok *all*
>>> programming styles with it: procedural, OO, predicate,
>>> functional, pure or full of side-effects.  Recursion
>>> will be your friend, function references your allies,
>>> you will *truly* know what a closure is, and that
>>> an argument stack is actually a performance hack.
> 
> Not quite...
> You can't grok programming techniques based on complicated static type 
> systems.

Hm.  What's a ``complicated static type system''?  There are rich
type systems, call them complicated if you want, and Common Lisp has
one of those.  But CL isn't statically typed.  Sure, that means
there are programming techniques that are more likely used in
statically typed languages like OCaml or Haskell, but I don't see
why you can't use them in CL, too, if you want (I tried; it works).
But you don't have to use them.  OTOH, how do you do monadic programming
in, say, OCaml that doesn't support overloading like Haskell?  Static
typing gets in the way again...

> You will learn to write many kinds of programs, but will not 
> learn how to use a type system to guarantee certain aspects of program 
> behavior.  Also, has anyone ever tried logic programming in Lisp?

As writing a Prolog compiler is a standard exercise in Common Lisp
text books, I guess a lot of people did...

Regards,
-- 
Nils Goesche
"Don't ask for whom the <CTRL-G> tolls."

PGP key ID 0x42B32FC9
From: Barry Watson
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <3C5A7C32.90A64B67@uab.ericsson.se>
Nils Goesche wrote:

> > You will learn to write many kinds of programs, but will not
> > learn how to use a type system to guarantee certain aspects of program
> > behavior.  Also, has anyone ever tried logic programming in Lisp?
> 
> As writing a Prolog compiler is a standard exercise in Common Lisp
> text books, I guess a lot of people did...

I seem to recall a logic program in the Lisp 1.5 users manual which was
first published in '65 I think.
From: Bob
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <a3e297$tij$1@flotsam.uits.indiana.edu>
There is an excellent lesson on logic programming in the latest (and
previous) EOPL by Dan Friedman.  He has steadily been improving on the
algorithms and general approach to his logic system from print to print.  I
think currently he has the whole (give me some stretching room here ...
hehe) of logic programming crammed into 11 lines of the coolest code I've
ever seen.  At any rate, it is an excellent read.  Check it out!

Bob


"Barry Watson" <············@uab.ericsson.se> wrote in message
······················@uab.ericsson.se...
>
>
> Nils Goesche wrote:
>
> > > You will learn to write many kinds of programs, but will not
> > > learn how to use a type system to guarantee certain aspects of program
> > > behavior.  Also, has anyone ever tried logic programming in Lisp?
> >
> > As writing a Prolog compiler is a standard exercise in Common Lisp
> > text books, I guess a lot of people did...
>
> I seem to recall a logic program in the Lisp 1.5 users manual which was
> first published in '65 I think.
From: Jean-Fran�ois Trevien
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <3c5ab954$0$194$626a54ce@news.free.fr>
"Bob" <········@indiana.edu> a �crit dans le message news:
············@flotsam.uits.indiana.edu...
> There is an excellent lesson on logic programming in the latest (and
> previous) EOPL by Dan Friedman.  He has steadily been improving on the
> algorithms and general approach to his logic system from print to print.
I
> think currently he has the whole (give me some stretching room here ...
> hehe) of logic programming crammed into 11 lines of the coolest code I've
> ever seen.  At any rate, it is an excellent read.  Check it out!
>

Some link please ...

Jef
From: Bob
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <a3egqd$vi1$1@flotsam.uits.indiana.edu>
http://www.cs.indiana.edu/eopl/

cheers!


"Jean-Fran�ois Trevien" <·········@free.fr> wrote in message
····························@news.free.fr...
>
> "Bob" <········@indiana.edu> a �crit dans le message news:
> ············@flotsam.uits.indiana.edu...
> > There is an excellent lesson on logic programming in the latest (and
> > previous) EOPL by Dan Friedman.  He has steadily been improving on the
> > algorithms and general approach to his logic system from print to print.
> I
> > think currently he has the whole (give me some stretching room here ...
> > hehe) of logic programming crammed into 11 lines of the coolest code
I've
> > ever seen.  At any rate, it is an excellent read.  Check it out!
> >
>
> Some link please ...
>
> Jef
>
>
From: Bob
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <a3gvop$9bj$1@flotsam.uits.indiana.edu>
if anyone took this statement too seriously, I apologize....
best,
bob


"Bob" <········@indiana.edu> wrote in message
·················@flotsam.uits.indiana.edu...
> There is an excellent lesson on logic programming in the latest (and
> previous) EOPL by Dan Friedman.  He has steadily been improving on the
> algorithms and general approach to his logic system from print to print.
I
> think currently he has the whole (give me some stretching room here ...
> hehe) of logic programming crammed into 11 lines of the coolest code I've
> ever seen.  At any rate, it is an excellent read.  Check it out!
>
> Bob
>
>
> "Barry Watson" <············@uab.ericsson.se> wrote in message
> ······················@uab.ericsson.se...
> >
> >
> > Nils Goesche wrote:
> >
> > > > You will learn to write many kinds of programs, but will not
> > > > learn how to use a type system to guarantee certain aspects of
program
> > > > behavior.  Also, has anyone ever tried logic programming in Lisp?
> > >
> > > As writing a Prolog compiler is a standard exercise in Common Lisp
> > > text books, I guess a lot of people did...
> >
> > I seem to recall a logic program in the Lisp 1.5 users manual which was
> > first published in '65 I think.
>
>
From: Brian P Templeton
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <87lmecjy48.fsf@tunes.org>
"Bob" <········@indiana.edu> writes:

> There is an excellent lesson on logic programming in the latest (and
> previous) EOPL by Dan Friedman.  He has steadily been improving on the
> algorithms and general approach to his logic system from print to print.  I
> think currently he has the whole (give me some stretching room here ...
> hehe) of logic programming crammed into 11 lines of the coolest code I've
> ever seen.
Not *very very long lines* with many sexps each, I hope... how many
function applications?

;) ;) ;)

(More seriously, though, LOC is not a good measurement... Lisp
programmers can write metaprograms *very* easily, and therefore can
easily count the number of function applications...)

> At any rate, it is an excellent read.  Check it out!
> 
> Bob
> 
> 
> "Barry Watson" <············@uab.ericsson.se> wrote in message
> ······················@uab.ericsson.se...
>>
>>
>> Nils Goesche wrote:
>>
>> > > You will learn to write many kinds of programs, but will not
>> > > learn how to use a type system to guarantee certain aspects of program
>> > > behavior.  Also, has anyone ever tried logic programming in Lisp?
>> >
>> > As writing a Prolog compiler is a standard exercise in Common Lisp
>> > text books, I guess a lot of people did...
>>
>> I seem to recall a logic program in the Lisp 1.5 users manual which was
>> first published in '65 I think.
> 
> 

-- 
BPT <···@tunes.org>	    		/"\ ASCII Ribbon Campaign
backronym for Linux:			\ / No HTML or RTF in mail
	Linux Is Not Unix			 X  No MS-Word in mail
Meme plague ;)   --------->		/ \ Respect Open Standards
From: Nils M Holm
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <3c5a982a$0$12752$9b622d9e@news.freenet.de>
In comp.lang.lisp Barry Watson <············@uab.ericsson.se> wrote:
> I seem to recall a logic program in the Lisp 1.5 users manual which was
> first published in '65 I think.

The LISP 1.1 Programmer's Manual contains a discussion of the Wang
algorithm for the propositional calculus on the pages 44-55. Code is
included. The manual was issued for the first time in 1962.

Nils.

F'up-to: comp.lang.lisp

-- 
Nils M Holm <···@t3x.org> -- http://www.not-compatible.org/nmh/
From: Julian St.
Subject: Re: Forth v Lisp, secret weapon of Computer Science
Date: 
Message-ID: <5rk7txfnre.fsf@blitz.comp.com>
David Feuer <···········@brown.edu> writes:

> >> But, if you learn Lisp correctly, you can grok *all*
> >> programming styles with it: procedural, OO, predicate,
> >> functional, pure or full of side-effects.  Recursion
> >> will be your friend, function references your allies,
> >> you will *truly* know what a closure is, and that
> >> an argument stack is actually a performance hack.
> 
> Not quite...
> You can't grok programming techniques based on complicated static type 
> systems.  You will learn to write many kinds of programs, but will not 
> learn how to use a type system to guarantee certain aspects of program 
> behavior.  Also, has anyone ever tried logic programming in Lisp?

I know there is an example of some very prolog-like macros in ANSI
Common Lisp by Paul Graham.  

Chapter 15: "In this chapter we will write a program that makes
inferences based on a collection of if-then rules."

With a little effort you could extend it to be quite identical to
Prolog. Graham also claims that a lot of early Lisp programs were used
to solve logical questions.

I think the code itself is freely available on Graham's homepage.

Regards,
Julian St.