| CARVIEW |
Select Language
HTTP/1.1 200 OK
Connection: keep-alive
Server: nginx/1.24.0 (Ubuntu)
Content-Type: text/html; charset=utf-8
Cache-Control: public, max-age=300
Content-Encoding: gzip
Via: 1.1 varnish, 1.1 varnish
Accept-Ranges: bytes
Age: 0
Date: Fri, 16 Jan 2026 12:59:46 GMT
X-Served-By: cache-dfw-ktki8620061-DFW, cache-bom-vanm7210080-BOM
X-Cache: MISS, MISS
X-Cache-Hits: 0, 0
X-Timer: S1768568386.087707,VS0,VE293
Vary: Accept, Accept-Encoding
transfer-encoding: chunked
barbies: Classes for working with types that can change clothes.
[Skip to Readme]
barbies
barbies: Classes for working with types that can change clothes.
Types that are parametric on a functor are like Barbies that have an outfit for each role. This package provides the basic abstractions to work with them comfortably.
[Skip to Readme]
Modules
[Index] [Quick Jump]
Downloads
- barbies-2.1.1.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
| Versions [RSS] | 0.1.0.0, 0.1.0.1, 0.1.2.0, 0.1.3.0, 0.1.3.1, 0.1.4.0, 1.0.0.0, 1.1.0.0, 1.1.1.0, 1.1.2.0, 1.1.2.1, 1.1.3.0, 2.0.0.0, 2.0.1.0, 2.0.2.0, 2.0.3.0, 2.0.3.1, 2.0.4.0, 2.0.5.0, 2.1.0.0, 2.1.1.0 (info) |
|---|---|
| Change log | ChangeLog.md |
| Dependencies | base (>=4.11 && <5), distributive, transformers [details] |
| License | BSD-3-Clause |
| Copyright | 2018 Daniel Gorin |
| Author | Daniel Gorin |
| Maintainer | jcpetruzza@gmail.com |
| Uploaded | by DanielGorin at 2024-01-13T13:46:09Z |
| Category | Data Structures |
| Home page | https://github.com/jcpetruzza/barbies#readme |
| Bug tracker | https://github.com/jcpetruzza/barbies/issues |
| Source repo | head: git clone https://github.com/jcpetruzza/barbies |
| Distributions | Arch:2.1.1.0, LTSHaskell:2.1.1.0, NixOS:2.1.1.0, Stackage:2.1.1.0 |
| Reverse Dependencies | 14 direct, 190 indirect [details] |
| Downloads | 27148 total (109 in the last 30 days) |
| Rating | 2.25 (votes: 2) [estimated by Bayesian average] |
| Your Rating |
|
| Status | Docs available [build log] Last success reported on 2024-01-13 [all 1 reports] |
Readme for barbies-2.1.1.0
[back to package description]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.,
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 to learn more.
Related packages
- barbies-th: Use Template Haskell to derive barbie-types from declarations that look like normal types.
- higgledy: Use Generics to give a barbie-type interface to a normal type.
- harg: Program-configuration (from command-line arguments, environment variables, configuration files, etc) via barbie-types