From: Samantha Atkins (firstname.lastname@example.org)
Date: Sat Apr 28 2001 - 17:23:55 MDT
Why C# and other such languages as opposed to Lisp and its variants?
Lisp has many advantages including great underlying simplicity, full
reflection, a history of formal analysis of language constructs and
programs, optimization to near (or better than) C speeds on many classes
of problems, self-modification and so on. To my mind those are
difficult features to beat when any of the C derivative languages
including C#. What does C# (for instance) buy you that you don't and
can't have with Lisp?
I very much agree with the scenario and have considered proceeding on
such lines for a while now. Many of the by-products along the way are
also generally important and lucrative to the software industry.
Some of the more interesting problems revolve around the semantics of
software components of various types. Without classification of the
semantics, of what a component is for and under what circumstances, it
would be extremely difficult to build a system that could write programs
from a general description of what was desired. But long before that
there are many types of analysis of source, dependencies, searching for
applicable patterns, refactoring and such that would be useful and
again, lucrative, steps in this general direction. The by-products
could be used to build a variety of software engineering tools.
Ben Goertzel wrote:
> Hi all,
> Having posted some peripheral stuff to the list lately, I feel obliged to
> post something on-topic ;>
> This follows up a conversation that Eliezer, Peter Voss and some others and
> I had over dinner at the Foresight conference
> I proposed the following sequence of events leading up to the Singularity
> 1) Someone [perhaps Eli, perhaps little old me, perhaps both of us together,
> perhaps some unknown hacker from the barren plains of Tadzikistan] creates a
> fairly intelligent AI, one that can be taught, conversed with, etc.
> 2) This AI is taught about programming languages, is taught about algorithms
> and data structures, etc.
> 3) It begins by being able to write and optimize and rewrite simple programs
> 4) After it achieves a significant level of practical software engineering
> experience and mathematical and AI knowledge, it is able to begin improving
> itself ... at which point the hard takeoff begins.
> My intuition is that, even in this picture, the hard takeoff takes months or
> a few years, not minutes. But that's still pretty fast by the standards of
> human progress.
> If this is the way it goes, then I have a concrete proposal for two things
> that would probably speed up step 2.
> The first is the creation of a formalized database of knowledge about
> algorithms, programming languages and AI. At www.mizar.org, there is a
> formalized database of knowledge about undergraduate and some graduate-level
> mathematics. But it's scanty on CS. Now, I am well aware that formalized
> theorems and proofs are not the essence of mathematics. But they're an
> important component, which a young AI will more easily absorb from
> formalized treatments than from journal math articles, which have their own
> peculiar social and psychological assumptions underlying them, different
> from the patterns underlying the math itself.
> The second is the creation of an efficient & scalable programming language
> with a purely formal semantics. C# may fulfill this criterion; Peter Voss
> is evaluating it for this purpose. Java is formal but not yet efficient and
> scalable enough; an improved JVM could solve the problem, particularly a JVM
> specialized for large-scale AI. C is efficient and scalable but its use of
> pointers means that its formal semantics needs to include a formal model of
> heap memory, which makes the task of inference-driven self-modification
> MUCH more difficult for a C program. [When I say C I include C++]
> I think that this picture of the path to the Singularity is a little
> different from that of Eliezer. But I'm not sure. My sense is that he
> views self-modification as entering into the picture earlier, perhaps in
> stage 1, as the best way of getting to the first "fairly intelligent AI."
> I'm not 100% sure this is wrong, but after a lot of thought I have not seen
> a good way to do this, whereas I have a pretty clear picture of how to get
> to the Singularity according to the steps I've outlined here.
> -- Ben
This archive was generated by hypermail 2.1.5 : Wed Jul 17 2013 - 04:00:36 MDT