let over logic - What functional programming can learn from logic programming
48 years after it's invention, logic programming remains a less frequently used paradigm.
What can functional programming learn from logic programming?
Unification and nondeterminism are powerful constructs not strictly relegated to logic programming. We'll look at unification, nondeterministic completion, probabilistic computation, and constraint propagation in functional contexts.
Outline/Structure of the Keynote
- 5 mins - introduction to logic programming
- 10 mins - what unification would look like in Clojure
- 7 mins - what nondeterminism would look like in Clojure
- 5 mins - probabilistic computation in Clojure
- 7 mins - truth maintenance/constraints in Clojure
- 11 mins - discussion.
Learning Outcome
Audience will leave session with an expanded appreciation of what is possible in their own language.
Target Audience
functional programmers prepared to imagine extending the functional paradigm
Prerequisite
Participants should be comfortable with some functional language. Examples mostly in Clojure
Links
My workshop on web dev in SWI-Prolog for strangeloop 2013 was in the form of an application everyone could run.
https://github.com/Anniepoo/strangeloop
Public Feedback