RE: Languages and AI

From: Ben Goertzel (
Date: Fri Jul 20 2001 - 18:24:30 MDT

> "B", of course. There is no conceivable benefit to internally
> representing the brackets and so on. "XML", for our purpose, means "tree
> structure in which adding new nodes or new node types does not destroy the
> integrity of existing data".

OK, Eli, I am starting to see what you're trying to get at here. I'll print
up your documentation and read it carefully and think about it more. All
the XML mentions actually distracted me from the important points about what
you're trying to do. Actually, XML is almost entirely irrelevant to what
you're trying to do.

What is important about your proposal is the idea of making a programming
language with *efficient & robust self-modification* as a design goal.

But, I'm afraid that the Flare proposal you've created so far doesn't come
very close to presenting something that could be given to a programmer to
implement, with any plausible hope of coming up with a usable

I suspect that making an internal structure that allows modifications
robustly & efficiently, AND is reasonably efficient when executing, may be a
very difficult detailed design problem. It doesn't need a programmer yet,
and it doesn't need an open-source-style gang of programmers. It needs a
lot of hard thinking on the part of a real expert in compiler design.

Linux did well with a gang of coders of varying ability and insight, but
Linux was just a port of Unix to a different hardware platform. What you're
talking about here is an internal programming language representation that
has different mathematical properties than the standard ones.

Saying that the internal representation will be a tree gets you about 10% of
the way there. The hard part is guaranteeing that representing common
programming constructions (elementary ones, and composite ones) is done in
an efficiently modifiable and yet efficiently executable way.
Multithreading and memory allocation are going to be particularly
interesting issues here, as will be dynamic binding if it's allowed...

I don't think you should yet be seeking a programmer for this project. I
think you should be seeking an expert design group to work out formally how
this thing should work inside, to some level of detail. Most
optimistically, this will take several months of effort. And then it will
be time to recruit a programmer, or more.

-- Ben

This archive was generated by hypermail 2.1.5 : Wed Jul 17 2013 - 04:00:37 MDT