core.logic.intro
summary
An introduction to core.logic demonstrates concrete tools—fresh, conde, unification—and shows how to separate search from specification by declaring a data-shaped answer and letting the engine enumerate solutions. A working timetabler builds a vector of four periods (course, lecturer, venue, students), implements a recursive permutation checker, runs queries like run 10 to page results, and enforces constraints (no concurrent lecturer). The code generates multiple valid schedules, the constraints prune invalid ones, and the approach runs on the JVM via core.logic.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 2:13Logic programming
- 7:57Logic variables and queries
- 11:47Logical operators
- 14:57Data as abstraction
- 17:47Timetabling setup
- 22:19Permutation and lecture rules
- 26:53Why logic programming matters
- 28:57Summary
related talks
34mA Taste of Prolog
01h 28mInto the Core Squeezing Haskell into nine Constructors
47mLogic Programming à la Carte
01h 34mFormal Logic Undressed
20mCoq a la Carte: A Practical Approach to Modular Syntax With Binders
49mQuantitative program reasoning in Granule via graded modal types
38mLearn you some Lisp for Great Good
22mCan Logic Programming Be Liberated from Predicates and Backtracking? (Lightning talk)
