From: Peter Voss (peter@optimal.org)
Date: Sun Jul 22 2001 - 11:55:48 MDT
I agree with Eli that current languages leave much to be desired. Flare
includes some important features.
Some background: In the late 80's I developed my own dream language - ONE -
a full-featured dynamically extensible language with full 'annotation'. My
company developed several major commercial applications in ONE. However,
when I sold the company, ONE lost it's chief driving force - me. I wish I
had an upgraded version of ONE to do my AI programming - I would enjoy
programming a lot more, and would be a lot more production in certain areas.
Comprehensive new languages *can* be developed by a small team - however -
it is extremely difficult to persuade people to adopt a new language. And
for good reason: Expensive learning curve; don't fully appreciate power of
new features; risk of continuity; tools are different and not as good as
mature languages; can't use existing classes/ routines/ utilities; can't
hire people with expertise; etc.
Having said all of this, here are a couple of personal desires for a
'Flare'.
An elegant and powerful syntax for dynamic class/ object/ method
references - I don't fully understand how Eli proposes to do this in
FlareSpeak.
I'm frustrated at the lack of inherent support for object (and dynamic class
& method) persistence in current languages. It would to nice to have that.
(I can send a separate post to Eli -I don't want to bog down this list/ post
with detail)
Now for the reasons that a new language like Flare should may not be such a
good idea:
I think that Ben's post pretty much says it:
It's premature, not all that important to achieving AI, and a better
approach overall would be to improve Java (or C#) . A detailed AI design
(and implementation experience) will highlight what language features are
*really* crucial. For example, I believe that general intelligence will
require far more focus on data encoding & (internal) representation than on
program structure and logic. If this is true, than language limitations play
far less of a role - most of the 'programming' really occurs within the data
structure.
Then, as James pointed out, as soon as the code is (self-) modified at the
XML level - this very quickly becomes (practically) incomprehensible at the
FlareSpeak level anyway.
>From my own experience, there are huge performance penalties for dynamic
creation & referencing of objects, and many of the other neat features you
want. They require very substantial (and expensive) compiler development
(forget interpreters). What I see happening is that many of these features
that we want *are* slowly being added to mainstream languages. Don't
underestimate the benefits of mainstream languages, IDE's, compilers, etc. -
huge pool of programmers, interoperability, access to existing libraries
(e.g. LEDA), big-iron and network op-sys support; etc.
Developing (even radical) extensions to an existing language - once specific
AI bottlenecks suggest it - seems to be a better approach.
Peter
www.optimal.org - Any and all feedback welcome: peter@optimal.org
This archive was generated by hypermail 2.1.5 : Wed Jul 17 2013 - 04:00:37 MDT