Friday, May 4, 2007

aswan (part 4)

[Part 1] [Part 2] [Part 3]

Now that we've planted our feet firmly in the ground, let's try and see what it could mean if all this were possible.

There would be millions and millions of code snippets floating around each doing some small specific task. Think of these as genes. Many code snippets would be doing the same thing and the community would evaluate these and tag and rate these. The better ones would automatically become more popular. If one considers these as genes competing with each there, only the fittest survive.

Tags and descriptions provide us with a fair idea of what the purpose of the code snippets is. These also make it easy to search for the code snippet you are looking for. Now, if we could represent this description of functionality in a formal manner (a Functional Description Language, perhaps?) it would be really very easy for each such gene to announce what it can do and for really very easy for someone to say what they want done. In fact, a computer would be able to match one with the other and making available code (in terms of functionality) easily accessible.

And so one could define entire components in terms of smaller functionalities that the computer would fetch for you and piece together – a software that create software.

[Part 1] [Part 2] [Part 3] [Part 4]