The uvector package

[ Tags: bsd3, data, library ] [ Propose Tags ]

Fast unboxed arrays with a flexible interface. The library is built of fusible combinators, as described in the paper /Stream Fusion: From Lists to Streams to Nothing at All/.

For best results, compile with your user programs with -O2 -fvia-C -optc-O2.

[Skip to Readme]


Versions 0.1,,,,,,,
Dependencies base (<4.3), ghc-prim [details]
License BSD3
Author Manuel Chakravarty, Gabriele Keller, Roman Leshchinskiy, Don Stewart
Maintainer Don Stewart <>
Category Data
Home page
Uploaded Tue Jun 10 22:12:46 UTC 2008 by DonaldStewart
Updated Sat Dec 20 11:21:03 UTC 2014 by HerbertValerioRiedel to revision 1
Distributions NixOS:
Downloads 2153 total (14 in the last 30 days)
Rating 0.0 (0 ratings) [clear rating]
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-12 [all 7 reports]
Hackage Matrix CI


  • Data
    • Array
      • Data.Array.Vector



Compile the library with read/write bound checking enabled.


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for uvector-0.1

[back to package description]
The uvector library is a polished up version of the basic flat, unlifted
arrays from the Data Parallel Haskell project. These arrays use
aggressive fusion optimisations, low level unboxed representations, and
a list-like interface, to provide convenient access to fast arrays in
pure Haskell.

As this is all about speed, the library is only available for GHC. 


When to fuse: don't duplicate work.