[clean-list] Artificial Intelligence in Clean

Pieter Koopman pieter@cs.kun.nl
Tue, 13 May 2003 21:46:38 +0200


Dear Alex,

At 14:27 13-5-2003 -0300, Alexsandro Soares wrote:
>I´m interested in the use of modern functional
>programming languages in Artificial Intelligence. At
>the moment, I'm trying with Clean. So, I have some
>questions:
>
>1 - Is there anyone that used Clean for Neural
>Network, Genetic Programming, Fuzzy Logic, heuristic
>search, expert systems or other areas of Artificial
>Intelligence?

Very recently we have started to work on this area in Nijmegen.
Not much results yet, but what has been done looks OK.

>2 - How efficient are these programs compared with
>equivalent implementations in C or other languages
>(Haskell, OCaml, etc.)? Are there source codes
>available?

I expect just like any other program: it depends on how clever you are in 
programming. There is no reason why Clean programs should be much slower 
than C-programs. Usually there is at most a factor of 2 difference in 
speed. Sometimes C wins, sometimes Clean wins.

>3 - Is Clean (like others lazy, strongly typed
>languages) inappropriate for this task?

Clean is strongly typed. But why should strongly typed languages be 
inappropriate?

>I´m a novice programmer in Clean, and I have a last
>question: How can I multiply two matrix A and B, and
>put the result destructivly in another one? Something
>like: C = A x B. This is important for Neural Networks
>implementation.

Use unique datastructures for you matrices.
Have a look at the Clas library at 
http://www.cs.kun.nl/~clean/Download/Download_Libraries/clas/clas.html.
Unfortunatly, this lib is still written in Clean 1.3, but conversion to 
Clean 2.0 should be straight forward. Tell me if there you encounter problems.

Have fun,

Pieter Koopman