The adaptive-containers package

[Tags: bsd3, library]

Self optimizing polymorphic container types.

Adaptive containers are polymorphic container types that use class associated data types to specialize particular element types to a more efficient container representation. The resulting structures tend to be both more time and space efficient.

A self-optimizing pair, for example, will unpack the constructors, yielding a representation for (Int,Char) requiring 8 bytes, instead of 24.

This difference can be visualized. Consider the expression:

 [ (x,y) | x <- [1..3], y <- [x..3] ]

Currently supported adaptive containers: pairs, lists

Most unboxed element types are supported.


Versions0.1, 0.2, 0.2.1, 0.3
AuthorDon Stewart
MaintainerDon Stewart (
Home page
Upload dateMon Apr 6 04:00:44 UTC 2009
Uploaded byDonaldStewart
Downloads416 total (40 in last 30 days)




Maintainers' corner

For package maintainers and hackage trustees