Skip to main contentSkip to page footer

 |  Blog

Python competition: The "Julia" programming language

Python is undoubtedly one of the most important programming languages for data science projects. With its simple syntax and extensive library diversity, it offers a solid basis. Nevertheless, Python faces a well-known problem: speed. This is where Julia comes in, an up-and-coming programming language that tries to close this gap without sacrificing functionality.

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.

About the author

 

Bianca Leßmann is a software developer at M&M Software and is particularly interested in the field of data science. She was able to gain her first experience of the topic and the use of programmes to solve mathematical problems during her bachelor's and master's degree in physics at Leibniz Universität Hannover. 

Created by