Saturday, April 16, 2005

Z++ and the future of application development

Research has reached its final stage of recognizing that component-based development combined with object-oriented approach is the final word in software engineering. The one remaining factor for the rise of the tidal wave is the language.

One sincere cult is extending C++ in different directions. For instance, BOOST is extending and standardizing libraries. Many others are working on extending the language itself by presenting their C++ wish list. Everyone seems to be running and chanting without pausing for a moment of reflection. C++ is valuable precisely because it is a system programming language, as opposed to a platform-independent language for developing applications. For instance, you do not want C++ executables to run on a virtual processor.

Among the other cults are the protectors of XML. Since that has already reached its dead end, there is really not much to say about it. Very soon XML will join COM and CORBA. Java and C# are similar nuisances that will only result in a lot of spending for their adopters.

The correct path is the natural road to evolution towards perfection. We should continue to improve C for low-level device programming. For system and middleware programming, we should continue to improve C++, and reduce its pitfalls. Application developers, on the other hand, need a universal abstraction. Applications must run on tomorrow’s operating systems without any code change. Porting, as applied to application programs, is an activity of day before yesterday.

The language Z++ starts out with entire C++ made platform free. The Z47 processor is about 500K in size, and yet supports exactly one language on all platforms. That means, there are no such things as Z++ for enterprise, PDA or whatever else. Z++ is the same for every platform. Keep in mind that Z++ is no Java or C#. Z++ contains C++ as a proper subset.

Z++ improves on C++ beyond any posted wish list. However, the coherent design of Z++ took almost 15 years of research and experimentation. There is not one language that can claim to have a particularly useful feature, which Z++ lacks. Quite to the contrary, the sum of all languages glued together will not match up to the expressiveness of Z++. Yet, the learning curve for a C++ programmer is considerably less than what it takes to learn STL.

The home of Z++ programming language is ZH Micro.

Labels: , , , ,