Imagine trying to build a complex billing and inventory control system. You go to a repository and choose one piece of software for each type of functionality you want; a piece that calculates remaining inventory, a piece that knows how to order more, a piece that represents pricing and changes itself accordingly and even self contained pieces that contain data about themselves and know how to reproduce copies of itself. Then you bring them together, choose a piece of software that represnts workflow and create a brain for the entire collection that responds to stimuli.
I have deliberately used words that have some meaning in the world of biogenetics. This method of building software has parallels to both the way biological cells work and the definition of current day object-oriented software.
But to come up with a system that is capable of the scenario above, we need a basic data structure and a container for programming logic both housed in a self-contained binary structure just like a biological cell. Actually more like a biological stem cell, capable of transforming itself into a specialized building block. I call this basic building block a dell, a digital cell. Now, all we need for a revolution in computing to occur is to come up with a compact, scaleable data storage structure, a compact programming language and a housing to run the programming language in, like a mini jvm.
Easier said than done.