datalog
datalog copied to clipboard
Add typed database relations
This branch implements a more strongly-typed data model. Users can specify a custom type system for relations and ensure at compile time that embedded datalog problems respect that type system. This is an improvement over the previous implementation where all ground terms were of a common type a
, and could be mixed inappropriately in a column.
At the same time, this commit is also exploring a new representation of tuples that should be significantly more compact and more efficient to maintain.
This is a work in progress and will probably end up touching everything.