profunctors
Haskell 98 Profunctors (by ekmett)
contravariant-extras
Extras for the "contravariant" package (by nikita-volkov)
profunctors | contravariant-extras | |
---|---|---|
4 | 1 | |
69 | 3 | |
- | - | |
4.3 | 5.5 | |
2 months ago | 7 months ago | |
Haskell | Haskell | |
GNU General Public License v3.0 or later | MIT 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.
profunctors
Posts with mentions or reviews of profunctors.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-10-03.
-
How to use PostgreSQL with Haskell: hasql
We’ll also use contravariant-extras, vector, profunctors, and tuple packages to make a few things tidier (this isn’t required; it’s all copy-paste anyway).
-
The Haskell Unfolder Episode 2: quantified constraints
Edward Kmett already added a superclass to Profunctor, but releasing this got stalled
-
Alternative to arrows?
One of the main problems with the Arrow hierarchy is that it’s not particularly well-factored. The main Arrow class has five methods, which is both intimidating to newcomers and indicative that there’s some decomplection that can be done. I think the best alternative is to use the profunctors package; it deals much more fluently with things that can take values and then return them (functions, Kleisli arrows, etc). For example, the Arrow class is broken down across Profunctor and Strong. I had a term rewriting engine that used arrows, and I was never really happy with it until I moved it to profunctors.
-
Why kind-level foralls don't interact with ScopedTypeVariables
Indeed, that is a somewhat contrived example that is meant to illustrate that ScopedTypeVariables aren't just limited to standalone type signature declarations—they can also be used in arbitrary subexpressions as well. Whether you prefer to use type signature declarations or expression type signatures largely depends on your personal tastes, but both styles are used in the "real world". For instance, here is one example of a use of expression type signatures + ScopedTypeVariables in the profunctors library.¹
contravariant-extras
Posts with mentions or reviews of contravariant-extras.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-10-03.
-
How to use PostgreSQL with Haskell: hasql
We’ll also use contravariant-extras, vector, profunctors, and tuple packages to make a few things tidier (this isn’t required; it’s all copy-paste anyway).
What are some alternatives?
When comparing profunctors and contravariant-extras you can also consider the following projects:
stratum-tool - Command-line tool for communicating with Electrum server
hasql-pool - A pool of connections for Hasql
groupoids - Haskell 98 Groupoids
elephants
sorty - Small sort utility
GPX - GPS eXchange Parser
confsolve - Generalized file conflict resolving tool.
headroom - ©️ Manager for license headers in source code files.
representable-profunctors - Representable profunctors
mmark-cli - Command line interface to the MMark markdown processor
readline-statevar - readline-statevar: Haskell readline wrapper library with variables (setX/getY) wrapped in state vars
profunctor-extras - Profunctor composition
profunctors vs stratum-tool
contravariant-extras vs hasql-pool
profunctors vs groupoids
contravariant-extras vs elephants
profunctors vs sorty
profunctors vs GPX
profunctors vs confsolve
profunctors vs headroom
profunctors vs representable-profunctors
profunctors vs mmark-cli
profunctors vs readline-statevar
profunctors vs profunctor-extras