1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
# barbies [](https://travis-ci.org/jcpetruzza/barbies)
Types that are parametric on unary type-constructors that control
their shapes are like Barbies that can wear different clothes
to become a different doll. This is a common Haskell-idiom. E.g.,
```haskell
data Person f
= Person
{ name :: f String
, age :: f Int
}
b1 :: Person Last -- Barbie with a monoid structure
b2 :: Person (Const a) -- container Barbie
b3 :: Person Identity -- Barbie's new clothes
```
This package provides basic classes and abstractions to work with these types and easily transform them.
See the [docs](https://hackage.haskell.org/package/barbies/docs/Barbies.html) to learn more.
## Related packages
- [barbies-th](https://hackage.haskell.org/package/barbies-th): Use Template Haskell to
derive barbie-types from declarations that look like normal types.
- [higgledy](https://hackage.haskell.org/package/higgledy): Use Generics to give a barbie-type interface
to a normal type.
- [harg](https://hackage.haskell.org/package/harg): Program-configuration (from command-line arguments,
environment variables, configuration files, etc) via barbie-types
|