arXiv · 2503.08184
Julia in HEP
Abstract
Julia is a mature general-purpose programming language, with a large ecosystem of libraries and more than 12000 third-party packages, which specifically targets scientific computing. As a language, Julia is as dynamic, interactive, and accessible as Python with NumPy, but achieves run-time performance on par with C/C++. In this paper, we describe the state of adoption of Julia in HEP, where momentum has been gathering over a number of years. HEP-oriented Julia packages can already, via UnROOT.jl, read HEP's major file formats, including TTree and RNTuple. Interfaces to some of HEP's major software packages, such as through Geant4.jl, are available too. Jet reconstruction algorithms in Julia show excellent performance. A number of full HEP analyses have been performed in Julia. We show how, as the support for HEP has matured, developments have benefited from Julia's core design choices, which makes reuse from and integration with other packages easy. In particular, libraries developed outside HEP for plotting, statistics, fitting, and scientific machine learning are extremely useful. We believe that the powerful combination of flexibility and speed, the wide selection of scientific programming tools, and support for all modern programming paradigms and tools, make Julia the ideal choice for a future language in HEP.
Explore related subjects
Keep this discovery
Graeme Andrew Stewart, Alexander Moreno Briceño, Philippe Gras, Benedikt Hegner, Uwe Hernandez Acosta, Tamas Gal, Jerry Ling, Pere Mato, Mikhail Mikhasenko, Oliver Schulz, Sam Skipsey. 2025-03-11. Julia in HEP. https://doi.org/10.1051/epjconf%2F202533701266
Cite the original work for its findings. Save a collection to share your selection of sources.