Julia is an open-source programming language that was developed specifically for scientific computing, but can also be used as a general-purpose programming language. It has been under development at the Massachusetts Institute for Technology (MIT) since 2009 and its first version was released in 2018.
Here are some important aspects of Julia:
1. speed:
An outstanding feature of Julia is its impressive speed compared to similar programming languages such as Python or R. Thanks to efficient just-in-time compilation, optimised C code is said to be at most twice as fast as Julia code.
2. standard libraries:
The majority of the standard libraries in Julia are written in the language itself. Nevertheless, Julia cannot yet keep up with Python in terms of the number of packages available. To solve this problem, there are packages such as JavaCall, RCall and PyCall, which can be used to call other programming languages directly in Julia. Some functionalities for which other languages require additional packages are already integrated into Julia, e.g. natively implemented machine learning libraries and extensive mathematical calculation methods. This once again makes it particularly clear that Julia was developed for data science and mathematics.
3. learning resources and community:
Julia should be easy to learn and require a similar level of programming effort as Python. However, Julia is still at an early stage of development and has a comparatively small community and limited learning resources. Nevertheless, the developers regularly release new versions with additional functions. During our research, we found that some tutorials were no longer up to date due to minor syntax changes. However, the developers are keen to ensure compatibility with older Julia code.
Currently, data science projects are often carried out in Python, but this is often only used for prototypes as it is not fast enough. The programme is then rewritten in a different language in order to be able to use it effectively.
Julia could combine both requirements. At present, however, it makes sense not to use Julia for longer-term projects. Julia is still under development and some Python functions are still missing. Nevertheless, it is possible that Julia will become a serious competitor to Python in the future.