BSD-3-Clause licensed by Xy Ren
Maintained by
This version can be pinned in stack with:rec-smallarray-,2857

Module documentation for

Depends on 2 packages(full list with versions):


GitHub Workflow Status Hackage

An immutable extensible record type based on SmallArrays, intended to provide fast reads on small structures.


  • Index: Amorized O(1) with low constant factor
  • Update: O(n)
  • Slice: O(1)
  • Cons: O(n)

Note that this structure slows down GC when its size exceeds 128.


This library started out as a module in cleff, an extensible effects library, and it needs to continue accommodating that. Contribution is welcome as long as it does not impede this library’s performance nor increase its dependency footprint.


Changelog for rec-smallarray (2022-02-04)

  • Initial API