Find/Make a Category Theory Library #167
Labels
coq-dev
Questions related to best practices for Coq programming
help wanted
Extra attention is needed
question
Further information is requested
Everything in the library under
Basics
really belongs in its own library. A huge chunk of that is a whole category theory library.The next step is to review existing implementations to see whether any one is compatible with what we are doing. Luckily, a recent discussion on the Coq Discourse forum gives a list of them: https://coq.discourse.group/t/survey-of-category-theory-in-coq/371
A related question I have is whether the
Monad
class from ext-lib can be replaced with a more general class formalizing monads in arbitrary categories (ext-lib'sMonad
is specialized to the category of functions). Two big sticking points that make such unification difficult are (1) going back and forth between "monadic" and "categorical" notation (for both reasoning and programming), (2) extraction to OCaml, a call-by-value and impure language, where eta-reduction and other pointfree shenanigans significantly impact semantics and performance. (We could also give up (2) and extract to Haskell but then interoperability with QuickChick (which we haven't worked out yet) becomes more difficult...)The text was updated successfully, but these errors were encountered: