So far as I understand it, he is talking about how programming now is based around breaking a problem down into small components eventually reaching basic logical operations which when combined will return a desired result. This desired result is what we use a computer for; given exactly defined data it should return exact and correct responses in a hopefully timely manner.
The author hopes to break from this path of "Start, Think, Finish" into something more, where pre-built units converse freely and compute on their own to increase productivity, where threads will not sit idle waiting for processes to complete.
This is a noble ideal, but it requires many things. Each unit will require separate hardware to run each object's calculations, making the physical representation of this new breed of computer trying. How much time and processing muscle will be spent with the objects communicating with each other? How about one object being overloaded with requests from many other objects, resulting in universal slowdown? The author also submits that failure of an object will not always result in catastrophic failure; this would imply a certain amount of redundancy which unfortunately would become unwieldly amounts of bloat. How would you know if a section had failed without running the computations again and comparing them, and even then if there is a problem with the design of the object itself it would be useless. Suppose an object is talking to another object it is working with, and somehow decides that it's responses are suspect (or absent altogether); how could it continue?
Either you end up with the situation in our brains where there are many groupings that simply duplicate things done elsewhere (inefficient but reliable) or commonly used nodes which are overworked and if ever fail result in complete shutdown of all related operations.
As has already been noted, the implementation of such a system would be staggering in complexity, and the necessity of each object to act intelligently requires specialized hardware for any given task as well as wasted computing power and bloated code.
|