Whether Software Engineering Needs to Be Artiï¬cially Intelligent By Herbert Simon, author of __The Sciences of the Artificial__
- He talks about many tasks & goals that, at least in 2010, (25 years later) seem relatively obvious:
- There is aboundary between man and machine, and the automatic programming can make steps by moving the boundary toward peeople: e.g. incorporating shortcuts / macros whatever for the menial trivial tasks of programming.
- I would imagine that garbage collection, automatic type inference to be two of these menial tasks. Alternately, you can look at the automatic GUI generators like Glade and MFC. But why progress so slow on this part? We haven't automated that much..
- Must have a better language for formalizing desired program state, desired results. I agree! Programming languages still conflate the tasks of describing the data structures with the task of describing the desired end state..
- He talks about writing desires, objectives in natural language. I don't find that all to likely..
- Need a database of data representations from which to draw, code for the automatic programmer to copy into new programs.
- Have thought about this, and storing what program snippets do seems very ill defined! We can remember in our vague memory, but perhaps that's because we choose relatively few building blocks for constructing larger structures (and these structures, in turn, are relatively few...)
- A good example of moving the boundary between man and machine is the telephone exchange system. Initially, it was only operated by humans; later, it's mostly machines - it's become hard to find a human operator on the other end. The steps to this have been gradual, possibly due to the required effort, possibly due to institutional intertia.
- In design "the informality gradually gets squeezed out".
- The author tells that medical diagnosis, e.g. at the hands of caduceus, is well functional; looking back & at the present absence of expert systems in medicine, this statement seems overly optimistic.
- That said, i do agree heartily with that a useful expert system "must be designed in an interactive mode for progressive modification of the sort that I have been describing"
- Random: While moves in chess can be searched by traversing a tree, backgammon is not susceptible to the same approach. Hans Berliner, apparently in the 1980's devised a production program that was able to beat the world champion backgammon player. This was at least 10 years before Tesauro!
|