@hrefna on the risk of feeding more exciting stuff into your brain/body sleep-or-not struggle, the #openEngiadina project (for others: which switched to #XMPP/RDF from #ActivityPub) is also using #Datalog. I don't know to what extent that relates to this use case.
At some point (I missed the memo) #xtdb stopped espousing #datalog and invented #xtql. I'm guessing this was to step out of any annoying dependencies of datalog and dampen comparison with the other major datalog approaches in #Clojure.
Fantastic article on "Why logic programming is the best choice for #authorization" on Gusto's engineering blog. If you're curious to learn the history of #Rego, and why it's built on top ideas from logic programming, #prolog and #datalog, this is a great read.
It's always a delightful surprise to come across posts from folks with familiar names when looking something up. I wanted to get a comparison of Kyverno vs Open Policy Agent Gatekeeper and came across this awesome comment by longtime Kubernetes security nerd, @raesene: https://www.reddit.com/r/kubernetes/comments/u5tcfd/comment/i56i5ta/
@jawnsy@raesene With its roots in #Datalog and logic programming, #Rego takes some time to get used to... but once it clicks there's just so much that makes sense about using that paradigm for policy. @hrefna has written well about that in the past here, but she's a productive writer so I'm not sure I can find it 😅
Let's code some #Elixir and #Rustlang together today! Our Elixir HTTP client is nearly ready to release, and we can revisit our Rust implementation of #Datalog to make it a little nicer. Join me at 3:30PM CDT at https://twitch.tv/seanicuscode
Having now gone through some of the algorithms in the #JsonLD spec in a lot more detail and done more diagramming than is probably healthy, I think part of the problem I (and others) have here is that the @/context object is not (deliberately) typed.
Not as in "it doesn't represent the type," but rather "it has no type of its own to speak of."
It's series of processing directives and almost representing an internal, intermediate state in its own right for the data representation.
The (frustrating) exception to this is how it has a linear-order precedence and the ability to unset things in later contexts, but that aside
If you think of it this way, then it isn't a type and you can't really load it as one productively per se, but it may be a series of typed statements (yes, that has a type, but so does a maven build file in that sense, here have a cookie)
Great image from “designing data intensive applications” by kleppmann. I really appreciate that #datomic and #datalog are there rising above the swamp of the nosql danger zone!
Learning a #programming language that challenges your notion of what programming is might be one of the most rewarding things once it "clicks" and you start seeing the bigger picture. Whether that's #Clojure, #Rust, #Haskell, #Datalog or whatnot — doesn't really matter. They're systematic, and when you see the system, that's empowering.
I wish that there were more appreciation for #prolog (and #datalog) in our industry.
Like I'm really pleased to see languages like #rego and developments along those lines, but I get so frustrated by the continued reinventing C or BASIC syntaxes for what are fundamentally declarative problems.