Have a Cake and Eat It

The TIOBE Programming Community index is an indicator of the popularity of programming languages on a global level. According to the index, the programming languages C and Java have been the most popular programming languages for more than a decade now. It seems worthwhile to compare the TIOBE index to the popularity of programming languages that we use for the implementation of our products UnRisk-Q and UnRisk FACTORY.
We’ll measure the popularity of the different programming languages used by counting lines of code. The LOC counts for the languages were computed with the tool CLOC.

UnRisk-Q

The UnRisk-Q code base consists of 700,000 lines of code. The distribution of programming languages used for its implementation is shown in the pie chart below.


C++ takes the major piece of the cake. This is not surprising. In quant finance, where delivering results as fast as possible is of paramount importance, there is no viable alternative to C++ for implementing the low level numerical code.
The rest of the code base mostly consists of Mathematica code, because the UnRisk Financial Language we use as the high-level interface for modeling the financial problem domain is based on the Wolfram Language. The “Others” portion of the pie consists of shell scripts, CMake files and DOS batch files, which make up the build system of UnRisk-Q.

UnRisk FACTORY

The UnRisk FACTORY lets a user access the functionality of UnRisk-Q through a web based graphical user interface and uses a database for persistent storage. The UnRisk FACTORY code base consists of around a million lines of code. These are distributed among different programming languages in the following way:


The pie chart shows that the code base is roughly equally distributed between the programming languages SQL, Java, JSP (JavaServer Pages) and Mathematica. XML is used throughout the whole code base for configuration purposes and for the Maven based build system.