GPL-2.0-or-later licensed by Oleg Grenrus
Maintained by Oleg.Grenrus
This version can be pinned in stack with:ral-0.2.1@sha256:98c892152af5ed5c594a0be23fec9161a3e7203c84214f14b7929ef459991b8a,3641

This package provides ordinary random access list, RAList, and also a length indexed variant, RAVec.

The data structure allows fast cons-operation (like ordinary list) but also fast random access (like non-functional arrays).

For lens or optics support see ral-lens and ral-optics packages respectively.

Similar packages

These packages don't provide length-indexed variants, and their RAList has opaque structure.


Version history for ral


  • Add boring instances


  • fin-0.2 support
  • Add indexed-traversable instances
  • Explicitly mark all modules as Safe or Trustworthy.


  • Add reverse and itraverse_ to Data.RAVec.Tree
  • Add Data.RAVec.Tree.DF


  • First version. Released on an unsuspecting world.