TerminusDB uses a datalog under the hood, but GraphQL can expose a lot of datalog like power with the right interface. Ultimately we want to have named parameteric queries in datalog exposing "pseudo-edges" in GraphQL which can be treated just like a normal field but are actually calculated.
5 comments
[ 4.4 ms ] story [ 26.7 ms ] threadTerminusDB uses a datalog under the hood, but GraphQL can expose a lot of datalog like power with the right interface. Ultimately we want to have named parameteric queries in datalog exposing "pseudo-edges" in GraphQL which can be treated just like a normal field but are actually calculated.
For example it's very easy to build non-monotonic queries with OPTIONAL, which really messes with reactively streamed query results.
There is a certain sweet spot in conjunctive queries + regular path expressions, with a nice syntax.