contravariant
Haskell 98 contravariant functors (by ekmett)
geolite-csv
Generic types and functions for encoding and decoding columns (by byteverse)
contravariant | geolite-csv | |
---|---|---|
1 | 1 | |
73 | 44 | |
- | - | |
3.8 | 2.8 | |
9 months ago | 8 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.
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.
contravariant
Posts with mentions or reviews of contravariant.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-10-21.
-
Co-Applicative programming style
The operator also pops up in George Wilson's 2018 talk, Contravariant Functors: the Other Side of the Coin, along with (>*) and (*<) operators to help things along. Shortly after its publication, Issue #57 for contravariant was raised, suggesting not only (>*<) but the other operators from George's talk.
geolite-csv
Posts with mentions or reviews of geolite-csv.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-10-21.
-
Co-Applicative programming style
This is neat, and I tried going down the road of using Divisible for things years ago. This can be seem in a very old version of siphon's test suite. The data type for a CSV encoding has a trivial Divisible instance. However, as tekmo hints at in the post, the ergonomics of Divisible are pretty bad. Bad enough that I ended up just giving up on it (well, I had to decide if I wanted to swap the order of some type arguments to become a Profunctor, and I did not mourn the loss of the Divisible instance). Perhaps with the right syntactic sugar, it could be more useful.
What are some alternatives?
When comparing contravariant and geolite-csv you can also consider the following projects:
control-monad-free - Free monads and monad transformers
ghcjs-codemirror - In-browser code editor
monadbi - BiDirectional monads that can be transformed into each other (atleast partially).
stripe-core - :moneybag: Stripe API
hdph - Haskell distributed parallel Haskell
servant - Servant is a Haskell DSL for describing, serving, querying, mocking, documenting web applications and more!