Uploaded December 2025 | Updated September 2026, 2 weeks ago
What's new with JetReconstruction.jl? by Graeme A Stewart
PreTalx: pretalx.com/juliacon-2025/talk/CU8E8K
JetReconstruction.jl Package Repository: github.com/JuliaHEP/JetReconstruction.jl
slides: pretalx.com/media/juliacon-2025/submissions/CU8E8K/resources/jet-reconstr_ELBfWOb.pdf
Jet physics is one of the key areas where we can advance our knowledge of the interactions of fundamental particles. In collider physics, e.g., at CERN's Large Hadron Collider, two beams of counter-rotating energetic particles strike head on. This results in the production of new, highly energetic, heavy particles, which are unstable. These decay rapidly into other particles, forming a cascade of many final state stable particles. These particles are detected in high energy physics experiments, particularly in calorimeters, designed to stop and measure the energy of incident particles.
The task of grouping these energy deposits is one of the key tasks in high-energy physics event reconstruction. Jets are formed from clustering energy deposits, based on different momentum and geometric criteria.
JetReconstruction.jl is a native Julia package that was released in 2024 that implements many established sequential jet reconstruction algorithms. It already outperforms the "standard" C++ package, FastJet, which is widely used.
In the last year JetReconstruction.jl has been enhanced with a number of important features. Integration with other Julia packages has been improved (e.g., EDM4hep.jl). Jet grooming can be performed and substructure, as well as the original jet constituents, can be retrieved, which allows many important physics studies to be performed. Algorithms optimised for events at electron-positron colliders (such as CERN's Future Circular Collider proposal, FCC) have been implemented, unlocking the possibility of full FCC analysis support in Julia.
Additionally, to support the most time-critical scenarios of jet reconstruction while taking data (in so-called trigger farms), static compilation and C bindings have been added for the package.
What's new with JetReconstruction.jl? by Graeme A Stewart
PreTalx: pretalx.com/juliacon-2025/talk/CU8E8K
JetReconstruction.jl Package Repository: github.com/JuliaHEP/JetReconstruction.jl
slides: pretalx.com/media/juliacon-2025/submissions/CU8E8K/resources/jet-reconstr_ELBfWOb.pdf
Jet physics is one of the key areas where we can advance our knowledge of the interactions of fundamental particles. In collider physics, e.g., at CERN's Large Hadron Collider, two beams of counter-rotating energetic particles strike head on. This results in the production of new, highly energetic, heavy particles, which are unstable. These decay rapidly into other particles, forming a cascade of many final state stable particles. These particles are detected in high energy physics experiments, particularly in calorimeters, designed to stop and measure the energy of incident particles.
The task of grouping these energy deposits is one of the key tasks in high-energy physics event reconstruction. Jets are formed from clustering energy deposits, based on different momentum and geometric criteria.
JetReconstruction.jl is a native Julia package that was released in 2024 that implements many established sequential jet reconstruction algorithms. It already outperforms the "standard" C++ package, FastJet, which is widely used.
In the last year JetReconstruction.jl has been enhanced with a number of important features. Integration with other Julia packages has been improved (e.g., EDM4hep.jl). Jet grooming can be performed and substructure, as well as the original jet constituents, can be retrieved, which allows many important physics studies to be performed. Algorithms optimised for events at electron-positron colliders (such as CERN's Future Circular Collider proposal, FCC) have been implemented, unlocking the possibility of full FCC analysis support in Julia.
Additionally, to support the most time-critical scenarios of jet reconstruction while taking data (in so-called trigger farms), static compilation and C bindings have been added for the package.
. This talk focuses on the enhancement of the initially purely deterministic voice control application (see the [paper](https://proceedings.juliacon.org/papers/10.21105/jcon.00121) [1], the [2022 talk](https://www.youtube.com/watch?v=W7oQb7pLc04with) [2], and the [2023 talk](https://www.youtube.com/watch?v gpH-mkrdGM) [3]) with LLM technology.
[JustSayIt.jl](https://github.com/omlins/JustSayIt.jl) can operate entirely offline, utilizing locally installed LLMs via Ollama, with model management and interaction handled through Python packages such as ollama, accessed via PyCall. LLM interactions are streamlined by incorporating dynamic context such as selected text and clipboard content. This enables, for example, near-instantaneous text summaries or translations via single-word voice commands. More complex tasks are enabled by directly forwarding free speech to the LLM, and the LLM output can be instantly converted to audio output using a text-to-speech engine. As a result, almost human-like interaction with the LLM is possible.
For speech recognition, [JustSayIt.jl](https://github.com/omlins/JustSayIt.jl) employs a dual approach: lightweight, low-latency constrained speech recognition using Vosk for deterministic commands and high-accuracy free speech recognition via a faster reimplementation of OpenAIs Whisper for natural language interactions. The system automatically switches between these engines to optimize responsiveness and accuracy, ensuring seamless voice control and LLM interaction without performance bottlenecks.
The approach presented here bridges a crucial gap in human-AI interaction by enabling the seamless integration of LLM intelligence into small, everyday tasks where traditional LLM-chat interactions are overly cumbersome and time-consuming. By combining deterministic, low-latency voice control with LLM capabilities and leveraging offline execution of distilled LLM models, this solution ensures privacy, efficiency, and performance. With limitless customizability and programmability, [JustSayIt.jl](https://github.com/omlins/JustSayIt.jl) empowers users to create their ideal, AI-powered voice assistant tailored to their individual needs.
References:
[1] Omlin, S. (2024). JustSayIt.jl: A Fresh Approach to Open Source Voice Assistant Development. The Proceedings of the JuliaCon Conferences, 6(66), 121, https://doi.org/10.21105/jcon.00121
[2] Omlin, S. (2022). JustSayIt.jl: A Fresh Approach to Open Source Voice Assistant Development. JuliaCon 2022 conference, 2022. https://www.youtube.com/watch?v=W7oQb7pLc04
[3] Omlin, S. (2023). Quick Assembly of Personalized Voice Assistants with JustSayIt. JuliaCon 2023 conference, 2023. https://www.youtube.com/watch?v gpH-mkrdGM Enhancing Deterministic Voice Control with LLM Interaction | Omlin | JuliaCon Global 2025](https://i.ytimg.com/vi/vXLIbWyvIGo/mqdefault.jpg)




 (2019), [_Algorithms for Decision Making_](https://algorithmsbook.com/decisionmaking/) (2022), and [_Algorithms for Validation_](https://algorithmsbook.com/validation/) (2025). Not only do we present the algorithms in Julia, but we generate the figures and examples using Julias `pythontex` integration. This allows us to present concise algorithms to the reader and display figures and examples _using the exact algorithms within the text_. The textbooks use a custom Tufte-style LaTeX template that weve open sourced ([sisl/tufte_algorithms_book](https://github.com/sisl/tufte_algorithms_book)). We will also highlight the features of Julia that enable concise algorithms in print, including multiple dispatch, auto-differentiation, and full Unicode support. Along with Julia-specific features, we will showcase packages in the ecosystem that seamlessly integrate into the algorithms, including `LazySets`, `IntervalArithmetic`, `JuMP`, and `Distributions`.
The second part of the talk will focus on how we use Julia in both our lectures and assignments at Stanford. A new course we are teaching at Stanford titled [_Validation of Safety-Critical Systems_](https://aa228v.stanford.edu) follows our validation textbook and heavily uses Julia and `Pluto.jl` in lecture materials and course assignments. Through light-weight interactive Pluto notebooks, we demonstrate complicated topics to students during lecture which also allows them to explore the topics on their own time after class. Notably, we also use Pluto for four programming assignments. We will discuss why we ultimately chose to require Julia and use Pluto, and the framework we implemented to obfuscate hidden code from the students, to test their work locally, and integrate into Gradescope for auto-grading and friendly leaderboard competitions.
Finally, we will talk about the future of Julia in academia—from teaching, to assignments, to textbooks, and research papers. We will showcase recent development of a prototype package we use for lecture material, `PlutoPapers.jl`, and the potential for interactive research papers written entirely in Julia, Markdown, and LaTeX ([mossr/PlutoPapers.jl](https://github.com/mossr/PlutoPapers.jl)). Julia in Academia: Textbooks, Stanford Courses, and the Future | Moss | JuliaCon Global 2025](https://i.ytimg.com/vi/wPFPT-Ech2c/mqdefault.jpg)




