CASUS researcher promotes the use of Julia in high-energy physics

At the end of September, the workshop JuliaHEP will start at the European Organization for Nuclear Research (CERN) in Geneva (Switzerland). The aim of the organizers, including CASUS researcher Uwe Hernandez Acosta, is to convince the high-energy physics (HEP) community of the new Julia programming language, which combines the advantages of languages from computer science such as C++ and languages from the natural sciences such as Python.

It was 2019 when Hernandez Acosta first became aware of the Julia programming language originating from the Massachusetts Institute of Technology (Cambridge, USA). He was immediately won over: “Julia is considered by many to be one of the pioneering new languages for the development of scientific software. I am likewise convinced, because Julia combines the advantages of easy-to-learn scripting languages such as Python with high performance and fast execution speed typical of classic programming languages such as C/C++ and Fortran.” The research associate at the Center for Advanced Systems Understanding (CASUS) at Helmholtz-Zentrum Dresden-Rossendorf (HZDR) is one of the authors of a technical article published in 2023, which highlights the potential of Julia for various areas of high-energy and particle physics and includes suggestions as to which software libraries should preferably be rewritten and further developed using Julia. Hernandez Acosta is also co-founder of a Julia working group of the HEP Software Foundation, a global network of high-energy physicists with an affinity for computer science.

Through the HEP Software Foundation, existing software packages are promoted and shared and training courses and workshops are organized. New projects are being designed and implemented as well. On the one hand, the Julia working group takes up the approach of the above-mentioned technical article and systematically examines various aspects from the field of high-energy physics to determine whether the current household languages should be replaced by Julia. On the other hand, certain software already written in the household languages is practically replaced with Julia developments. “These new and further developments in Julia ensure, among other things, that once complicated software programs are opened up to a wider audience and at the same time the development time for such projects is greatly reduced,” says Hernandez Acosta.

Workshop registration still possible

The upcoming workshop in Geneva is the second of its kind and at about 130, the number of registrations is already higher than last year. Anyone who wants to be there on site can still apply to take part or register for free online participation until the start of JuliaHEP 2024. “We are very pleased with the level of registrations,” says Hernandez Acosta. “However, there are tens of thousands of scientists working in high-energy physics worldwide. We assume that most of them could benefit from Julia. In this light, we are still at the very beginning of our advocacy work.”


Background: Programming languages

Computers require machine code to execute instructions. This must be in binary form, i.e. a sequence of zeros and ones. However, programming is not just typing in zeros and ones. Instead, classic programming languages such as Java or C++ are used. Here, the desired instructions can be written in a comprehensible language. A so-called compiler then translates the source code into machine code. In contrast to their conventional siblings, scripting languages such as Python, PHP or JavaScript are usually not translated in their entirety (“compiled”). Instead, the source code is continuously translated (“interpreted”). It is therefore translated again and again each time it is executed.


Workshop JuliaHEP 2024

date: 30 September to 4 October 2024
place: CERN Idea Square

  • two days of contributed talks
  • three days of a JuliaHEP training, hackathons, and birds of a feather sessions

full program and registration on the event website