When writing research software we almost always investigate highly specific properties or algorithms of our domain, leading to us building the tools from scratch over and over again. The very same is true for the field of program synthesis: tools are hard to run, benchmarks are hard to get and prepare, and it is hard to adapt our existing code to a novel idea.
Herb.jl will take care of this for you and help you to define, solve, and extend your program synthesis problems.
Herb.jl provides…
- a unified and universal framework for program synthesis
- a fast notion to describe all sorts of program synthesis problems with different specifications and grammars
- many state-of-the-art benchmarks and solvers already implemented and usable out-of-the-box
Check out our documentation and the repository.
Try it out!
For anyone new to program synthesis, we offer tutorials to get you familiar with program synthesis within Herb.jl.
To those of you already familiar with program synthesis, we invite you to check out our Garden where we have implemented some well-known synthesizers within Herb.jl, so you can easily benchmark against them.
news
Jul 9, 2024 | We are presenting Herb.jl to JuliaCon 2024! Please visit our poster on Wednesday, July 10 (6:30pm For Loop = 3.2) or come to our talk by Tilman Hinnerichs on Thursday, July 11, at 10:00 (Method = 1.5)! |
---|---|
Jul 5, 2024 | A year since our first, we are now in our fifth HerbHackathon. With JuliaCon next week, we are getting Herb ready for the world to see, adding our new Garden with Herb implementations of other synthesizers. |
Apr 5, 2024 | Our fourth HerbHackathon is a fact. We worked on refactoring the code base to include HerbConstraints and set up the possibility of adding other constraint solvers. |
Jan 19, 2024 | We had our third HerbHackathon this week. This time we were able to fix some bugs, and we did a major refactor to focus more on context-free grammars. |
Oct 18, 2023 | The second iteration of our joint HerbHackathon took place over the past two days. We started adding benchmarks to be easily executed with Herb.jl. |
selected publications
2022
- ILPInductive logic programming at 30: a new introductionJournal of Artificial Intelligence Research, 2022