typedKanren - Statically Typed Relational Programming with Exhaustive Matching in Haskell
ACM SIGPLAN via YouTube
Gain a Splash of New Skills - Coursera+ Annual Just ₹7,999
Free courses from frontend to fullstack and AI
Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore a conference presentation introducing typedKanren, a statically typed embedding of relational programming in Haskell that extends miniKanren with disequality constraints and exhaustive matching capabilities. Learn how this innovative dialect addresses type safety in logic programming while maintaining the expressive power of relational programming paradigms. Discover the implementation details that leverage GHC.Generics for generic programming and Template Haskell for metaprogramming to reduce boilerplate code and enable comfortable logic programming with user-defined data types. Examine the unique relational matching variation that supports static exhaustiveness checks, ensuring compile-time verification of pattern completeness. Follow practical demonstrations showing the dialect applied to various examples and performance comparisons against other known miniKanren implementations. Gain insights into how functional programming languages can effectively host logic programming constructs while preserving static type guarantees, presented by researchers from Innopolis University at the Haskell 2025 symposium.
Syllabus
[Haskell'25] typedKanren: Statically Typed Relational Programming with Exhaustive Matching in(…)
Taught by
ACM SIGPLAN