From jimc@MATH.UCLA.EDU Tue Mar 12 21:10:24 2002
Return-Path: <jimc@math.ucla.edu>
X-Sender: jimc@math.ucla.edu
X-Apparently-To: lojban@yahoogroups.com
Received: (EGP: unknown); 13 Mar 2002 05:10:24 -0000
Received: (qmail 86194 invoked from network); 13 Mar 2002 05:10:24 -0000
Received: from unknown (216.115.97.167)
  by m10.grp.snv.yahoo.com with QMQP; 13 Mar 2002 05:10:24 -0000
Received: from unknown (HELO bodhi.math.ucla.edu) (128.97.4.253)
  by mta1.grp.snv.yahoo.com with SMTP; 13 Mar 2002 05:10:24 -0000
Received: from localhost (bodhi.math.ucla.edu [128.97.4.253])
  by bodhi.math.ucla.edu (8.8.8/8.8.8) with ESMTP id VAA20009
  for <lojban@yahoogroups.com>; Tue, 12 Mar 2002 21:10:22 -0800 (PST)
Date: Tue, 12 Mar 2002 21:10:30 -0800 (PST)
Sender: <jimc@xena.cft.ca.us>
To: <lojban@yahoogroups.com>
Subject: Re: [lojban] Programming Languages for Lojban
In-Reply-To: <Pine.NEB.4.44.0203111322310.4985-100000@reva.sixgirls.org>
Message-ID: <Pine.LNX.4.33.0203122054260.1259-100000@xena.cft.ca.us>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
From: Jim Carter <jimc@MATH.UCLA.EDU>
X-Yahoo-Group-Post: member; u=810565

On Mon, 11 Mar 2002, Invent Yourself wrote:
> On Mon, 11 Mar 2002, Robert J. Chassell wrote:
> > If one were to try to parse Lojban and use it for the internal workings of
> > an inference engine, would Lisp or Prolog be more appropriate?
> >
> > Lisp is perceived as a more general purpose language than Prolog, so
> > it more closely matches Lojban, which is a completely general purpose
> > language.

To my mind, both Lojban and Prolog are adapted to handling "tuples", which
are ordered sets of N (pointers to) referents, each the occupant of one
place of a predicate.

So far as I know, the following isn't official in Lojban, but it *is*
official in -gua!spi: a predicate is defined as an exhaustive list of all
its tuples (possibly truly infinite). Of course a person or database is
not expected to actually store the whole list, and humans are good at
inferring whether a newly seen tuple is in or out of the predicate, using
extra-linguistic pattern recognition skills.

For storing the relations that the artificial intelligence knows, and for
retrieving and transforming them, I think Prolog would be best. Its special
feature is the ability to locate tuples matching a pattern, using an
optimized engine. But in my experience Prolog is a disaster if asked to do
procedural tasks.

I don't know all that much about Lisp, but my impression is that it is much
more a procedural language. And if its pattern recognition code were
written in a highly procedural fashion, the result would be achingly slow.
"C", as in the Gnu "C" compiler's implementation, or C++, would be a much
better choice for that.

James F. Carter Voice 310 825 2897 FAX 310 206 6673
UCLA-Mathnet; 6115 MSA; 405 Hilgard Ave.; Los Angeles, CA, USA 90095-1555
Email: jimc@math.ucla.edu http://www.math.ucla.edu/~jimc (q.v. for PGP key)


