[Prev][Next][Index][Thread]

Re: Which language for AI: lisp, C++, ...



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  [...]