![]()
The original proto software participle was evolved on a system which had adapted circuits operating as switches. We know it was not compiled because compilers were had not yet evolved. This means it must have been written in machine code or assembly language.
So what actually happened is that assembly language evolved together with the CPU, and then the first part of software evolved. Naturally this software must have been an assembler, since no other software which would have been of any use at the time. (For example, if a spreadsheet or a database programs evolved before the origin of the operating system, this would certainly be pointless.)
Once an assembler was available, the evolution of software was on track to greater things. The existence of the assembler allowed evolution to take place in not only the source code and the object code, but also in the assembler itself. This lead to the evolution of high level languages, although the exact mechanism for this is the subject of ongoing research.
| Theory of Computer Evolution. | Note that these pages are in no way associated with Answers in Genesis. |