RE: Human minds on Windows(?) (was Re: Web site up! (GUI vs. CLI))

Billy Brown (
Thu, 8 Jul 1999 01:32:18 -0500

Eliezer S. Yudkowsky wrote:
> Billy Brown wrote:
> >
> > Higher-level simulations can greatly reduce the computer power
> needed (as
> > well as the volume of data), but they do so at the price of increasing
> > program complexity. At the opposite end of the spectrum you arrive at
> > software that elegantly models the abstract processes of the
> mind, and would
> > be so big that it could never be written by humans (maybe 10^13 LOC?).
> Disagreement - a truly elegant description of the algorithms, perhaps as
> instructions to genetic-algorithm "compilers" or self-modifying code,
> shouldn't be using any more information than there is in our DNA:
> 750M, tops.

I was estimating the effort required to write the program in C++, or some other language at a similar level of abstraction. Obviously the way out of the trap is move to a higher-level description of the program.

However, reducing something of this complexity to a manageable amount of code is going to require extremely high levels of abstraction. I can reduce human-written LOC by about an order of magnitude by moving from C++ to a modern high-level language, and I can maybe get the another factor of 20-50 out of special-purpose code generators. To get much beyond that we have to start inventing new techniques, which is what I think should be a major research focus of software engineering for the immediate future.

I would expect, BTW, that reaching the information density of DNA will take several levels of abstraction beyond what you suggest. DNA is best compared to a program that modifies itself, the rules of the language it is written in, and the architecture of the machine that it runs on, all at the same time. It seems to me that unfolding a strange loop like that into a simple hierarchy, as we would have to do in order to get a useable programming language, would require imbedding a near-sentient degree of intelligence into the programming tools. Since we can't code an AI of that complexity by hand, we're back to needing to build the tools to build the tools to build the tools.

Which would simply be an invigorating challenge, if only our industry wasn't so dominated by people who are content with languages that are older than they are...

Billy Brown, MCSE+I