JuliaCon 2025

FunctionFusion.jl - the algorithm composition framework
2025-07-24 , Main Room 4

FunctionFusion.jl is a framework which generates large algorithms from small computational blocks.
It allows to develop algorithms like drawing data flow diagrams.

The framework allows to create algorithms running in multiple environments (like production and simulation) and provides necessary tools for visualization and performance optimization.


Julia shine as a common programming language connecting research teams with engineering teams deploying algorithms in production environment. But besides single programming language, we also need a single domain language which will connect teams with very distant concerns and goals to create single product.

FunctionFusion.jl allows engineers to focus on describing the algorithms they making by decomposing them in smaller parts and assembling large algorithms from those parts.
From architecture point of view this encourages concise functions with narrow responsibilities and without side effects, making them testable and reusable.

The other big challenge is to cover the gap between production and development environment - if you can't read real sensor on the developers laptop you need some way to provide the results, but how to make sure that on the real machine you will run same code that you were studying?
FunctionFusion.jl allows to replace computational blocks in the algorithm, so you don't have to prove that the whole algorithm is working same way in production and development environment.

Last but not least is the performance.
FunctionFusion generates static algorithms which are optimized for the Julia. It enables Julia inference system to optimize code as if it would be hand written, literally producing the same assembly code as it would be for the hand written functions.

Software Architect in ASML working on Julia algorithms in the near real time system.
GitHub

This speaker also appears in: