Chuck Esterbrook wrote:
On 2/18/07, Eliezer S. Yudkowsky <[EMAIL PROTECTED]> wrote:

Heh.  Why not work in C++, then, and write your own machine language?
No need to write files to disk, just coerce a pointer to a function
pointer.  I'm no Lisp fanatic, but this sounds more like a case of
Greenspun's Tenth Rule to me.

I find C++ overly complex while simultaneously lacking well known
productivity boosters including:
* garbage collection
* language level bounds checking
* contracts
* reflection / introspection (complete and portable)
* dynamic loading (portable)
* dynamic invocation

I was being sarcastic, not advocating C++ as the One True AI language.

Eliezer, do write code at the institute? What language do you use and
for what reasons? What do you like and dislike about it with respect
to your project? Just curious.

I'm currently a theoretician. My language-of-choice is Python for programs that are allowed to be slow. C++ for number-crunching. Incidentally, back when I did more programming in C++, I wrote my own reflection package for it. (In my defense, I was rather young at the time.)

B. Sheil once suggested that LISP excels primarily at letting you change your code after you realize that you wrote the wrong thing, and this is why LISP is the language of choice for AI work. Strongly typed languages enforce boundaries between modules, and provide redundant constraints for catching bugs, which is helpful for coding conceptually straightforward programs. But this same enforcement and redundancy makes it difficult to change the design of the program in midstream, for things that are not conceptually straightforward. Sheil wrote in the 1980s, but it still seems to me like a very sharp observation.

If you know in advance what code you plan on writing, choosing a language should not be a big deal. This is as true of AI as any other programming task.

--
Eliezer S. Yudkowsky                          http://singinst.org/
Research Fellow, Singularity Institute for Artificial Intelligence

-----
This list is sponsored by AGIRI: http://www.agiri.org/email
To unsubscribe or change your options, please go to:
http://v2.listbox.com/member/?list_id=303

Reply via email to