TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

An Overview of Datalog (2010)

93 点作者 teleforce10 个月前

8 条评论

burakemir10 个月前
I am sure Clojure is great but it really shows the need for an &quot;overview of datalog&quot; that is not embedded in the context of a programming language with it&#x27;s own syntactic choices.<p>My own humble attempt is here <a href="https:&#x2F;&#x2F;github.com&#x2F;google&#x2F;mangle">https:&#x2F;&#x2F;github.com&#x2F;google&#x2F;mangle</a> ... I had come across datalog in Clojure and thought it is a complete nonstarter. Most people (including me) are not in a position to start using Clojure if all they want is a query capability.<p>IMHO what most people would want a datalog implementation that is very easy to integrate into their existing setup, with their existing data. Yet for extensibility it is also important to enable users to write datalog queries in it&#x27;s own special syntax so one can have type checking, modules, declarations in a way that is independent of the host programming language.<p>From a teaching point of view, one does need an example database. Here is &quot;employee department boss&quot;, with a volunteering spin: <a href="https:&#x2F;&#x2F;github.com&#x2F;google&#x2F;mangle&#x2F;blob&#x2F;main&#x2F;docs&#x2F;example_volunteer_db.md">https:&#x2F;&#x2F;github.com&#x2F;google&#x2F;mangle&#x2F;blob&#x2F;main&#x2F;docs&#x2F;example_volu...</a><p>There is a long history of approaches to integrate querying into programming languages (eg LINQ). Trade off here between making an easy to use yet powerful query language, keeping it simple and integrating it tightly into the host language or using a DSL along clear interface.
评论 #41336491 未加载
评论 #41338389 未加载
er4hn10 个月前
One very fun and practical application for Datalog is Biscuits, which are a type of arbitrarily scoped authorization token: <a href="https:&#x2F;&#x2F;biscuitsec.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;biscuitsec.org&#x2F;</a>.<p>I tried them out for a pet project over here: <a href="https:&#x2F;&#x2F;er4hn.info&#x2F;blog&#x2F;2024.05.08-biscuits&#x2F;" rel="nofollow">https:&#x2F;&#x2F;er4hn.info&#x2F;blog&#x2F;2024.05.08-biscuits&#x2F;</a> and was pretty impressed with what I found. It&#x27;s not a perfect solution, but I liked it a lot more than OAuth.
评论 #41335668 未加载
评论 #41335978 未加载
samstave10 个月前
Would love to hear the InstantDB folk input on this, as they talk about Datalog and (something else) in their design fro their query language, and stuff about GraphQL...<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=41322281">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=41322281</a><p>&gt;<i>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.</i>
评论 #41338923 未加载
aarroyoc10 个月前
A good video about Datalog: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=M5fwAkJqAVw" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=M5fwAkJqAVw</a>
pgt10 个月前
Learn Datalog Today: <a href="https:&#x2F;&#x2F;www.learndatalogtoday.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.learndatalogtoday.org&#x2F;</a>
29athrowaway10 个月前
Datalog is tempting but can be slow.<p>For recursion it can be elegant, but a graph query language like Cypher is much easier to work with.<p>Less verbose than SQL but also much less readable.
评论 #41335495 未加载
评论 #41335470 未加载
cricketlover10 个月前
Do we need another language for querying relqtional data? Why not just use SQL?
评论 #41335646 未加载
评论 #41335887 未加载
评论 #41335577 未加载
stuartrexking10 个月前
Clojure is the girl you should have married but didn’t.