Juliacon 2024

Herb.jl: Teaching programs how to program with program synthesis
2024-07-11 , Method (1.5)

Wouldn’t it be great if Julia would program itself? You simply tell it what you want, Julia magic happens, and you have your program. While this is still a farfetched dream, in this talk we will introduce you to Herb.jl, a Julia library that gets us a step closer to our big goal.


Herb.jl is a library for program synthesis: the task of automatically generating (not just)
programs from a given specification.

Herb.jl’s main goal is therefore two-fold. First, it aims to provide a missing toolbox for developing new program synthesizers, which is currently missing in the community. Second, it aims to unify many different flavours of program synthesis under a joint framework, making existing program synthesizers easy to use on new problems.

In this talk we show how Julia facilitates the library development on one hand, but also algorithm speed and composability of the synthesis procedure.

See also: Presentation slides (2.0 MB)

I am a PhD student for Computer Science within the PONY lab with Sebastijan Dumancic and Neil Yorke-Smith, researching in the field of program synthesis, neuro-symbolic proving and reasoning, and their application to bioinformatics.

Check out my website for more information.