Datalog is a small logic programming language, often useful for expressing program analyses. In particular, Rust's next-gen borrow checker, Polonius, is framed as a Datalog query over facts produced by the Rust compiler about a program in question. At the same time, several interesting next-gen Datalog engines are implemented in Rust. There is the potential for great synergy!
I'll briefly introduce Datalog, sketch how parts of Rust's borrow checker can be encoded as Datalog, and then name-check some Datalog engines written in Rust and their neat features.
Short personal bio about yourself
Frank is the chief scientist at and a cofounder of Materialize, Inc., a NYC start-up doing interactive realtime SQL in Rust. He has been using Rust since 2014, when his C#-based gig went away, and has written the datafrog lightweight Datalog .. "engine", let's say, among several other more substantial projects.
Lightning talk ⚡️🎤
Talk Title
Datalog and Rust
Brief description of the talk
Datalog is a small logic programming language, often useful for expressing program analyses. In particular, Rust's next-gen borrow checker, Polonius, is framed as a Datalog query over facts produced by the Rust compiler about a program in question. At the same time, several interesting next-gen Datalog engines are implemented in Rust. There is the potential for great synergy!
I'll briefly introduce Datalog, sketch how parts of Rust's borrow checker can be encoded as Datalog, and then name-check some Datalog engines written in Rust and their neat features.
Short personal bio about yourself
Frank is the chief scientist at and a cofounder of Materialize, Inc., a NYC start-up doing interactive realtime SQL in Rust. He has been using Rust since 2014, when his C#-based gig went away, and has written the
datafrog
lightweight Datalog .. "engine", let's say, among several other more substantial projects.