kan-extensions VS data-category

Compare kan-extensions vs data-category and see what are their differences.

kan-extensions

Kan extensions, Kan lifts, the Yoneda lemma, and (co)monads generated by a functor (by ekmett)

data-category

Library of categories, with categorical constructions on them (by sjoerdvisscher)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
kan-extensions data-category
- 1
77 54
- -
4.9 3.3
2 months ago 9 months ago
Haskell Haskell
BSD 3-clause "New" or "Revised" License BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

kan-extensions

Posts with mentions or reviews of kan-extensions. We have used some of these posts to build our list of alternatives and similar projects.

We haven't tracked posts mentioning kan-extensions yet.
Tracking mentions began in Dec 2020.

data-category

Posts with mentions or reviews of data-category. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-02.
  • Monthly Hask Anything (October 2021)
    7 projects | /r/haskell | 2 Oct 2021
    Even a fairly simple statement like "F preserves direct limits over N" is basically impossible to express like this. You can step further from Hask and work at the type level until the very end (which I believe is the approach taken by data-category), you can resign yourself to only expressing things that can be "defunctionalized" (an appropriate use of the term, I think, if not a correct one) down to Haskell functions, which gets you (Co)Yoneda, Lan, Ran, etc. in the general case and I think Traversable in this particular instance, or you can take some intermediate approach with constrained functions and/or explicit witnesses in your data types, but you can't make proper category theory "just work" the way it should.

What are some alternatives?

When comparing kan-extensions and data-category you can also consider the following projects:

semigroupoids

data-lens - Haskell 98 Lenses

range-set-list - Memory efficient sets with continuous ranges of elements. List based implementation.

data-lens-fd - Lenses with Functional Dependencies

msgpack - Haskell implementation of MessagePack / msgpack.org[Haskell]

cassava-conduit - Conduit interface for cassava [Haskell]

proto-lens - API for protocol buffers using modern Haskell language and library patterns.

total-map - Finitely represented /total/ maps

pretty-hex - A human readable style for binary data.

representable-tries - representable tries

folds - Folds and sequence algebras