I’m a software developer by trade and I’ve considered some of the deeper questions in life. You too have likely wondered whether the Lord used a procedural or object-oriented language when designing and building our world. If this question has kept you up at night, read on and rest well tonight.
If the Lord had been programming during creation, he was using an objected orientated approach and not a procedural language. At first blush, since the Genesis account is a nice series of sequential steps, one might think He programmed in a procedural construct. One could argue his creation followed a well ordered progression, light on day one, followed by heavens or sky on day two, and onward to the culmination of man on day six. However, procedural languages are really used to solve a specific problem. The Lord was not trying to solve a problem or process data in his creation. The Lord’s objective instead was creating a system of independent objects that would interact with one another and with him.
He was more concerned with the interaction of these objects than on solving a problem. Had the Lord been solving a problem, the Bible itself might have ended in Genesis 1, when the program had been written. The remainder of the Biblical text shows he was definitely more interested in the interactions of the objects themselves than in solving a problem. The great command itself reflects this, Love God and Love others as oneself. Later in the Genesis account we see how a rival programmer corrupts the base class with a virus which caused the original system to crash and has infected the backup system with a bug that continues to propagate.
In this object orientated language, the Lord had His objects inherit properties and behaviors from their parents. Unlike Java, multiple inheritances is supported. All objects inherit from two parents. However, the inherited behavior patterns can be overridden and not fully dictated by one’s parent. The nasty bug picked up in Genesis 3 appears to be deep within the constructor method and hence propagated to all children objects. The ultimate polymorphic affect is brought about by the re-instantiation of the object and inheriting from a bug free super class. Clearly, the Lord used some very sophisticated, dynamic, objected orientated programming approach in his creation.
Sleep well tonight and if you haven’t experienced a polymorphic event, re-instantiate.