kind-generics
witherable
kind-generics | witherable | |
---|---|---|
2 | 4 | |
- | 71 | |
- | - | |
- | 6.4 | |
- | 6 months ago | |
Haskell | ||
- | BSD 3-clause "New" or "Revised" License |
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.
kind-generics
-
Version 0.6 of Flat, a principled, portable and compact binary data format
There are other generic frameworks, such as generics-sop and kind-generics so even within generic default methods we are limiting ourselves to only deriving GHC.Generics. There should be one newtype for each generic framework so you can derive via SOP.Generically and Kind.Generically.
-
Practical Generic Programming over a Universe of Native Datatypes
kind-generics-sop
witherable
-
CS SYD - A dancing space leak
Generic operations: mapMaybe and the witherable package are two good examples.
-
Version 0.6 of Flat, a principled, portable and compact binary data format
Yes or if you have instances of the polynomial functors, you can create a trivial instance like https://github.com/fumieval/witherable/issues/89
-
A functor is a container that implements map. Is there a special name for containers that implement filter or reduce?
I think filter would correspond to the Filterable class from witherable.
-
Name of operation
I'm not sure about the parts of the above implementation like takeOne though. I've used this takeOne few times. Also, traverse combined with catMaybes is a pattern captured in witherable package. Like this:
What are some alternatives?
flat - Principled and efficient binary serialization
proto-lens - API for protocol buffers using modern Haskell language and library patterns.
rcu - experimenting with STM-backed read-copy-update in Haskell
lens - Lenses, Folds, and Traversals - Join us on web.libera.chat #haskell-lens
boombox - Seekable sources and efficient incremental sinks
discrimination - Fast linear time sorting and discrimination for a large class of data types
data-kiln - Sculpt mutable recursive data with reference equality; bake it using a data kiln into an immutable lazy structure
make-monofoldable-foldable - A simple package with a wrapper to make a MonoFoldable type Foldable
hjsonschema
unsafely - Flexible access control for unsafe operations and instances
arith-encode - Practical arithmetic encoding (aka Gödel numbering) library for Haskell.
combobuffer - Several pure buffer implementations