u/rain5in r/ProgrammingLanguages • Recommends
"Datafun: a functional query language" by Michael Arntzenius
88K subscribers • 114 videos on Hallway • Conference channel
- Recommended by 3 people: 2 on Hacker News and 1 in engineering communities.
- A classic. People kept recommending it from 2018 to 2025.
- Presented by Michael Arntzenius
Advanced. Deep dive for people who know the field.
9.1K views9 years ago3 recommendations
Programming languagesDatabases and dataLanguage design and type systemsFunctional programmingDatabase internals
Michael Arntzenius introduces Datafun, a functional programming language that integrates database-style querying using Datalog concepts.
Datafun is a new language exploring the question: What's the simplest way to bring our general-purpose languages closer to our database query languages? At its core, a lot of programming is data munging. Yet our general-purpose programming languages don't make this easy for us. We have to decide in advance how to arrange our data, whether we want it in memory or on disk, what operations we want to be efficient, and so on. Databases are powerful tools for solving these issues, but they involve separating our data from our general programming tools. Yet the walls separating database theory from programming language theory are quite thin. With the right design choices, we can dissolve them entirely. Purity and totality, for example, let us apply many standard database query optimizations to a functional language. Techniques like materialized view maintenance, Datalog's seminaive evaluation, and incremental computation are just different sides of the same coin. This talk will use Datafun as a jumping off point to explore these and other ideas at the intersection of databases and programming languages. Michael Arntzenius UNIVERSITY OF BIRMINGHAM Michael Arntzenius researches the theory, design, and implementation of programming languages. He's interested in types, monotonicity, logic, concurrency and distributed systems; but most of all in simplicity. He's convinced there is still low-hanging fruit left to be plucked in the orchards of language design, if you look in the right places.Why it's here
3 people recommend thisWhat people say. Recommended as an approachable introduction to bridging functional programming and database query languages.
a-salehon Hacker News • Recommends
On “A relatively simple Datalog engine”
fogzenon Hacker News • Recommends
On “Implementing Logic Programming”
u/rotuamiin r/ProgrammingLanguages • Mentions
On “Non-stuttering graph algorithms”
programming-talkscurated list on GitHubMentions
Under “Compilers/Interpreters”
u/rotuamiin r/ProgrammingLanguages • Mentions
On “Deconstructing Datalog”
tracnaron Hacker News • Mentions
On “Why Can't Database Tables Index Themselves? (2006)”
refseton Hacker News • Mentions
On “Deconstructing Datalog [pdf]”