[Prev][Next][Index][Thread]
Re: Which language for AI: lisp, C++, ...
-
To: info-dylan@ai.mit.edu
-
Subject: Re: Which language for AI: lisp, C++, ...
-
From: uj797@victoria.tc.ca (Arthur T. Murray)
-
Date: Wed, 22 Aug 2001 12:45:02 -0400 (EDT)
-
Followup-To: comp.ai
-
Organization: Victoria Telecommunity Network
-
References: <9lvont$mnc$1@mulga.cs.mu.OZ.AU>
-
Summary: An Alife AI to grow needs a Dylan-esque dynamic language.
-
XPident: uj797
-
Xref: traf.lcs.mit.edu comp.ai.alife:16819 comp.lang.c++:581654 comp.lang.dylan:13604 comp.lang.lisp:70140 comp.software-eng:92825
W.Boeke wrote in news:comp.ai on 22 Aug 2001:
> [...] Recently a question was raised in this newsgroup as
> to what language was the most appropriate for AI programming.
> We all know that the answer is lisp,
http://mind.sourceforge.net (q.v.) uses JavaScript!
> because *everything* is possible in this language and
> there is a huge user base as well as much literature.
>
> However ...
>
> Being interested in the computational challenges posed by AI
> and also being a C++ fan I investigated in the past the
> possibilities of getting more flexibility from C++.
> The tric is to circumvent the static typing of this language,
> and at the same time to use operator overloading, templates and
> automatic conversions when appropriate. I wrote a story about it:
http://people.a2000.nl/wboeke/easy/easy.html [URL enhanced -- ATM]
>
"Turning C++ into a dynamic language" (the title at the URL)
suggests yet another avenue for how an AI evolving at
http://freshmeat.net/projects/AI/ may eventually
rewrite its own source code and become the
longest-living instantiation of Open Source Alife AI.
> This paper describes some of the features of this C++ idiom
> without reference to its use for AI programming, however since
> then I implemented several classic AI problems successfully.
> A partial list:
> General Problem Solver
> Wolf, goat & cabbage
> the core functionality of Prolog
> Semantic Nets
> Parsing and compiling an application-specific language
>
> Missing of course are Neural Nets etc. and data-base oriented
> areas, which do not need a flexible implementation but raw
> power instead.
>
> I suppose that the main bottleneck for using C++ this way is
> the very unusual semantics that only I understand, because I
> created them. In the paper I tried to be as clear and concise
> as possible, assuming a good C++ knowledge with the reader. For
> this reader the problem will be not the (small) number of
> functions that have to be learned, but you must understand
> exactly what they do and then use them creatively.
>
> In this posting I'll resist the temptation to list the
>*phantastic* features of my project, because maybe nobody is
> interested. If needed a follow-up message may clarify things.
>
> Wouter Boeke [...]