datafrog icon indicating copy to clipboard operation
datafrog copied to clipboard

A lightweight Datalog engine in Rust

Results 11 datafrog issues
Sort by recently updated
recently updated
newest added

Hey, I'm just playing around with datafrog and trying to translate some basic datalog queries to the equivalent Rust code. I am wondering what something like the following snippet looks...

Currently, `datafrog` requires that all joins occur on tuples of the form `(K, V)`. This becomes unpleasant for relations with [more than two elements](https://github.com/rust-lang/polonius/blob/cf585fd76c9e65552fd9a8f320c3c2d8f822a75e/polonius-engine/src/output/datafrog_opt.rs#L78), as well as for joins on...

The compiler team is working on a standard policy around its external crates (see https://github.com/rust-lang/compiler-team/pull/19) -- we need to bring this crate into conformance, though the policy is not yet...

Currently the project uses an inconsistent naming scheme for generic arguments, which this PR aims to unify: - `K`, `Key` -> `Key` - `V1`, `Val1` -> `Value1` - `V2`, `Val2`...

@lqd opened rust-lang/polonius#157 a while ago, ~~which solves the `Location::All` problem in what I think is the "correct" way~~. Essentially, it transforms all occurrences of `origin_live_at(O, P)` in rule bodies...

We don't presently have any unit tests...for anything. I think we should create a "base layer" of unit tests where we generate some simple operations and some random inputs and...

It could be interesting to have simple statistics, for example behind a feature flag, of the number of tuples and the time it took to merge and create them, for...

The `RelationLeaper` trait is implemented by `Relation` and has some extra methods for constructing leapers. However, it would be simpler if they were defined directly on the struct rather than...

I had trouble following the existing docs for leapers and leapjoin. This PR adds longer explanations to the main `Leaper` wrappers and their constructors. It also adds links making it...

The example in the readme doesn't even compile and I can't get the ones in the example folder to do anything.