While preparing a Python411 podcast about classes and OOP, my mind wondered far afield. I found myself constructing an extended metaphor or analogy between the way programs are organized and certain philosophical ideas. So, going where my better angels dare not, here is the forbidden fruit of my noodling:
Spiritual Programming: It seems to me that, if anything of a person survives death in any way, it must do so in some way very different from that way in which we exist now. For now, we live in a temporal world, and once our body and brain ceases to function, then our mind can no longer function in this temporal world, and we cease to exist in this temporal world So, our current consciousness and awareness is a temporal one. We experience the one way flow of time. We are not actually conscious of any permanent thing, only of the changing world as time flows forward. In this sense, we are like the ghost in the machine of a computer system running a computer program, or programs, written in a procedural language and style. That is, the instructions in our program flow in a linear sequence, with each instruction impacting and giving way to the next instruction. Oh, there are the occasional looping structures, and even the occasional out-of-left-field chaos causing go-to; but we nevertheless experience all these things as linear and procedural. It seems apparent to me that , if anything of us survives it must do so outside time, and any surviving consciousness could not experience the same sort of temporal, linear, procedural existence of which we are now aware. Oh, I can imagine a timeless essence of our "being" existing timelessly but statically, observing the remnant of our "informational holes" evolving and dissolving away in the temporal universe; but this would be a cold survival after all, hardly worthy of the name. But perhaps there is a non-temporal world of eternity, that has structures more reminiscent of higher order programming structures. So, for instance, functional programming takes and builds upon its procedural predecessors. So maybe our better, more re-useable parts, that we develop in this temporal existence, are recycled into functional units in a non-temporal world. There would still be a direction of logic flow, but it would be a higher order reality than a linear, procedural one. But beyond this perhaps we can imagine an object oriented world, one in which the more functional, re-useable parts of people and things from this lower, temporal world are re-packaged into objects containing both functional methods and also parameters of state. These higher order objects, and the relationships they form amongst themselves, can be imagined to exist in a more timeless state than mere procedural programs, or even functional ones, in that the complex object oriented structures of such a timeless world would hold meaning even when viewed as a whole, and not just when played linearly like a phonograph record. There must be some higher order cognate of time, in this object oriented world, but we are not able to conceive of it at this time. Our awareness of existence in this higher order world would be very different than our current awareness of linearly flowing time, but must be more in the way of sensing the movements of meaning and relationships amongst the informational matrices of this higher order, object oriented universe. One can visualize a universe in which there are are an infinite number of infinite dimensions, but these dimensions also keep expanding at an infinite rate forever. This expansion could be thought of as the cognate of time. Entities in this world could freely move back and forth in any dimension, and could experience the totality of reality all at once, but still experience the novelty of "time". I do not know how Aspect Oriented Programming fits into this picture, if at all. But one can imagine higher orders of programming logic and structure than OOP, whether AOP qualifies or some other, yet undescribed programing paradigm. And, we do not know how many higher layers of programming structure exist beyond our current technical understanding. Perhaps this is one reason why programmers are so passionate, and even religious, about their programming tools; because they intuitively sense that we are dealing with ideas that, however crudely, mirror eternal realities of immense significance. Ron Stephens <a href="http://www.awaretek.com/python/index.html">Python411 Podcast Series</a> -- http://mail.python.org/mailman/listinfo/python-list