ICFP 2024 (series) / miniKanren 2024 (series) / miniKanren 2024 / typedKanren: Statically Typed Relational Programming with Exhaustive Matching in Haskell
typedKanren: Statically Typed Relational Programming with Exhaustive Matching in Haskellremote
We present a work-in-progress on a statically typed embedding of relational programming (specifically a dialect of miniKanren with disequality constraints) in Haskell. Apart from handling types, our dialect extends standard relational combinator repertoire with a variation of relational matching that supports static exhaustiveness checks. To hide the boilerplate definitions and support comfortable logic programming with user-defined data types we use generic programming via GHC.Generics as well as metaprogramming via Template Haskell. We demonstrate our dialect of on several examples and compare its performance against some other known implementations of miniKanren.
Fri 6 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
Fri 6 Sep
Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
14:00 - 15:30 | |||
14:00 60mKeynote | Hosted miniKanren: Reconciling Optimizing Compilation and Extensibilityin-person miniKanren | ||
15:00 30mTalk | typedKanren: Statically Typed Relational Programming with Exhaustive Matching in Haskellremote miniKanren Pre-print |