▲ | stopachka 3 days ago | |
> Can you say more about that? What kind of queries does it support? Sounds a bit like datomic or datascript. How do you tell the agent to use it? Yes, we definitely take inspiration from datomic and datascript, as well as Tao (Facebook's DB). EAVs have a few good properties. First, it's more natural to do last-write-wins at the column level this way. Second, we get a real shot at creating a multi-tenant database. With EAVs you can either query them with datalog, or use SQL CTEs. Fun fact, on Instant's backend, we use a datalog-like langauge as intermediary representation, which ends up converting to a SQL CTE. Technically, you can make query on these as you can on a traditional SQL DB. To interact with all this, users (and in proxy agents) use a graphql-like language, called InstaQL. It's like if GraphQL was represented as plain javascript objects. Here's the system prompt, which shows these off: https://gist.github.com/stopachka/a6b07e1e6daeb85fa7c9555d8f... |