Unreleased - ReleaseDate
0.3.0 - 2024-9-12
Cleanups
- Remove
declare
andcalc
keywords (#418, #419) - Fix determinism bug from new combined ruleset code (#406)
- Fix performance bug in typechecking containers (#395)
- Minor improvements to the web demo (#413, #414, #415)
- Add power operators to i64 and f64 (#412)
Error reporting
- Report the source locations for errors (#389, #398, #405)
Serialization
- Include subsumption information in serialization (#424)
- Move splitting primitive nodes into the serialize library (#407)
- Support omitted nodes (#394)
- Support Class ID <-> Value conversion (#396)
REPL
- Evaluate multiple lines at once (#402)
- Show build information in the REPL (#427)
Higher-order functions (UNSTABLE)
- Infer types of function values based on names (#400)
Import relation from files
- Accept f64 function arguments #384
0.2.0 - 2024-05-17
Usability
- Improve statistics for runs (#284)
- Improve user-defined primitive support (#280, #288)
- Improve serialization (#293)
- Add more container primitives (#306)
Web demo
- Add slidemode in the web demo (#302)
- Fix box shadowing problem (#372)
Refactor
- Big refactoring to the intermediate representation (#320)
- Make global variables a syntactic sugar (#338)
- Drop experimental implementation for proofs and terms (#320, #342)
New features
- Support Subsumptions (#301)
- Add basic support for first-class, higher-order functions (UNSTABLE) (#348)
- Support combined rulesets (UNSTABLE) (#362)
Others
- Numerous bug fixes
0.1.0 - 2023-10-24
This is egglog's first release! Egglog is ready for use, but is still fairly experimental. Expect some significant changes in the future.
- Egglog is better than egg in many ways, including performance and new features.
- Egglog now includes cargo documentation for the language interface.
As of yet, the rust interface is not documented or well supported. We reccomend using the language interface. Egglog also lacks proofs, a feature that egg has.
See release-instructions.md for more information on how to do a release.