Subject: Re: [lojban] Programming Languages for Lojban

From: Jim Carter <[email-masked]>
Date: Tue, 12 Mar 2002 21:10:30 -0800 (PST)

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: [email-masked] http://www.math.ucla.edu/~jimc (q.v. for PGP key)