Re: What does the future of computing hold?



On 2006-11-17, Logan Shaw <lshaw-usenet@xxxxxxxxxxxxx> wrote:
Ben C wrote:
On 2006-11-16, Logan Shaw <lshaw-usenet@xxxxxxxxxxxxx> wrote:
Rob wrote:
On the other hand I've searched the web and have found several
articles on the topic. Such articles predict:
[ ... ]

* "self-writing software"?
IMHO, "self-writing software" is definitely possible. However, it's
likely that it's completely useless and a total waste of time unless
someone invents "self-writing specifications". I think the hard work
is in turning an informal problem specification into *any* kind of
formal description.

I think turning even a formal specification into code is also very hard
work for a computer. We are nowhere near being able to do that today.
You couldn't, for example, tell the computer you want to minimize a
linear function subject to some linear constraints and it invent the
Simplex algorithm all by itself, even if you tell it in computer
language rather than in natural language.

True, although I think you could build up a library of algorithms
(with formal descriptions of what they accomplish) and it could do
pretty well, at least better than some of the people out there
right now. (We've all seen some completely crazy stuff, right?)

As for the question of whether it's hard for a computer to convert
a formal spec into an implementation, it's definitely non-trivial,
but it seems like it is possible to do this. One fairly obvious
way is to use the techinque that (as I understand it) planning and
scheduling (read: AI) people use, which is this: define things in
terms of formal logic. The start state is expressed as a set of
givens. The possible operations are expressed as a set of
theorems. The target state is expressed as a theorem to be
proved. Then generating a plan to transform the universe from
its start state to its target state is reduced to automated
theorem proving.

Hmm, not sure how that works, unless it's trying sequences of the
possible operations at random. It's one thing to prove a theorem, quite
another to invent one. Monkeys on typewriters etc.

I found this an interesting book:

http://web.comlab.ox.ac.uk/oucl/publications/books/PfS/

Morgan's idea is to see program refinement as a continuous series of
refinement steps from abstract specification to implementation. Each
refinement step is equally formal, but the first few steps have to be
taken by humans. He uses a single programming language to express all
refinement steps; it's just that not all programs in this language can
be executed by computers.

Natural language comprehension is only the tip of the iceberg of the
problem of how to simulate human intelligence on a computer.

They can beat most of us at chess, but we can pick other games they will
thrash us at totally, and other games at which we will totally thrash
them. Chess happens to be somewhere in the middle. But we really don't
have a lot in common with them at all.
.



Relevant Pages

  • Re: How much intelligence?
    ... People do not even invent how to ... which is a key to successful and useful language, ... This elephant they are missing perfectly explains why humans are hugely different from animals even though both have very well expressed self-adaptation capabilities and in overall very similar "hardware". ...
    (comp.ai.philosophy)
  • Re: Tab software - Powertab?Musedit?GuitarPro?Sibelius?Finale?
    ... Beautiful transcriptions with funny symbols, pink lines, all kindsa crap! ... He's not invented a language, he's found simple and easy way of expressing certain ideas. ... The problem is if I try to transcribe something which has notes and perscussion on a single staff. ... It's one of the reasons I would not go to a graphic programme, as icarusi suggest below - the opportunities to invent a new language on occasion would be too tempting, and ultimately disastrous I a sure. ...
    (uk.music.guitar)
  • [LogoForum] Re: Audio file... my ignorance, again!!!
    ... For what did they invent things as "hexadecimal" or "little endian" or... ... Why not to use the natural and well knowing DECIMAL LANGUAGE? ... When you're programming at the level of hardware you have to understand things like hexadecimal because that's all hardware understands. ... sort numbers (I know it's only a personal perspective and it's against to all the computing language tradition but... ...
    (comp.lang.logo)
  • Re: FAQ 1.12--auto keyword
    ... which I imagine is what would justify yet ... but re-using "static" for purposes only tangentially related to ... if they want to invent a new language, ...
    (comp.lang.c)