3 ms·
The basic intuitions they have are correct, but if feels like there is a serious lack of or disregard for the theoretical background needed to talk about this s
by j-pb 4y ago
The basic intuitions they have are correct, but if feels like there is a serious lack of or disregard for the theoretical background needed to talk about this stuff properly.
> (pull db '[* {:team/task [* {:task/owner [*]}]}] team-id)
That's not Datalog. It's kind of a mix between a conjunctive query and a regular path query.
Datalog isn't even really a query language. It's a class of query languages with a specific expressive power.
Whereas SQL is essentially conjunctive queries with non-stratified Negation, Datalog is recursive conjunctive queries with no or only stratified negation.
Datalog also has nothing to do with triples, they are two completely orthogonal concepts.
I've been slaving away in this very space for years and this post heavily reminds my of my initial hubris. Building something truly foundational that can be universally implemented and perform in all potential target languages from Javascript, to WASM via e.g. Zig and Rust, while at the same time being both conceptually simple, and easy to implement, is really really really difficult with a lot of pain lurking in the details.
- blain_the_train 4y agodo you write about your findings and ideas? i would be interested to read more.
- j-pb 4y agoI regularly regret not writing a blog... But if you want to talk about some ideas feel free to drop by at discord.gg/tribles
- deleted 4y ago[deleted]