Wednesday, December 26, 2007

Is ignorance really bliss

Finally, academia is recognizing the power of Z47 as a distributed operating system, and the expressiveness of Z++, in particular the simplicity of dealing with autonomous agents for solving serious problems such airport traffic control. So, I thought it was time to create a PHP extension in order to carry over the simplicity of Z++ to the domain of web browsers. This note is my impressions from initial work on PHP.

The language C furnishes a high level assembly language for Von Neumann architecture of stored programs. C is here to stay as a system programming language so long as we remain under the curse of Von Neumann. However, the simple macro mechanism of C preprocessor has been a great tool in creating all types of gluing languages, such as SQL, PHP and in fact C++. The only distinction with regard to C++ is that its compiler does the dirty work of defining macros. Furthermore, C++ compiler takes advantage of the expressiveness of C pointers thereby extending C to C with classes.

Nonetheless, all these extensions and gluing languages springing off of C are ultimately bound to C, and therefore to the hardware on which they are compiled. This is a consequence of a remarkable observation that a language must be intimately associated with an operating system in order to provide complete control in building applications for that operating system.

Thus, when you create an application in BASIC, Smalltalk, Java or C#, your application is limited to the capabilities of the virtual machines that power those languages. A virtual machine is ultimately bound to the services of the actual operating system for which it is built. This is the fundamental reason for variations in Java language, for instance. Nevertheless, a virtual machine provides a reasonable abstraction for groups of operating systems that are close enough.

The Z47 processor, on the other hand, is a distributed operating system in its own right. For instance, a Z47 process can go to the waiting queue on one node (hardware machine) and receive its slice of execution on a different node. In other words, a set of Z47 processors act as one distributed operating system.

The language Z++ is intimately associated with Z47 processor just as C is intimately associated with an operating system written in C, such as UNIX. Thus, Z++ furnishes a universal abstraction independent of the (hardware) operating systems. In this case ignorance is in fact bliss. The point being that, an engineer can solve all his/her problems without having to deal with specifics of any operating system, and entirely within the linguistic abstractions of Z++. It is only a consequence of intelligence to approximate details with universal abstractions.

However, ignorance is not always bliss. For instance, a cow in a herd is happy and has no clue that someday of our choosing it will be slaughtered for food. The question is whether it is possible to even sense happiness without intelligence? Feeling healthy and comfortable like a cow in a vast pasture is only necessary for happiness, but not sufficient. Thus, a president who is happy with extending his and his friends’ graze land is not intelligently happy. In particular, we all started out in caves and hunted together. No one was created as privileged or elite.

Labels: , , , , ,