Babel Architecture, Version 0

No Comments

How it works out, remains to be seen, but the initial plan is that the main() will be written in Ada, because Ada is, supposedly, fast and has built-in concurrency support. This article will probably be changed/updated in the future.

Different programming languages seem to attract specialists from different fields, which means that for almost any given field, the libraries of different programming languages have different maturity. For historic reasons, the C++ seem to have the best 3D libraries, Ruby seems to be the most productive choice for text processing and software build automation. Java seems to have some really good data-file access libraries. Python seems to attract academics. Haskell seems to attract certain types of mathematicians. GNU R seems to be favored by statisticians. C seems to be popular amongst operating system developers, etc. The Babel Architecture is to allow the vast variety of different libraries to be used within a single application.


Improvement at 2015_12_26
Different versions of the same library should be run at different operating system processes, because that allows multiple versions of the library to be used at a single application. Given that backwards compatibility does not exist even if it is advertised, the ability to run multiple versions of the library at a single application allows gradual, planned, software updates. Different developers should run their code in separate, individual, operating system processes to keep from interfering with each other's work. That is to say, pair programming produces the lowest common denominator of the reliability and development efficiency of the code that each of the developers in the pair can individually produce.


Update on 2017_07_09
May be one solution might be to use the ZeroMQ in conjunction with operating system user specific "localhost" IP-addresses, 127.0.0.<something>, and routing tables.

Comments are closed for this post