carray: A C-compatible array library.

[ bsd3, data, library ] [ Propose Tags ]
This version is deprecated.

A C-compatible array library.

Provides both an immutable and mutable (in the IO monad) interface. Includes utilities for multi-dimensional arrays, slicing and norms. Memory is 16-byte aligned by default to enable use of SIMD instructions.

[Skip to Readme]


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Versions [RSS], 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5,,, 0.1.6,,,,,,,, (info)
Dependencies array, base (<4) [details]
License BSD-3-Clause
Author Jed Brown
Maintainer Jed Brown <>
Revised Revision 1 made by HerbertValerioRiedel at 2017-07-18T07:44:28Z
Category Data
Uploaded by JedBrown at 2008-02-14T21:01:23Z
Distributions LTSHaskell:, NixOS:, Stackage:
Reverse Dependencies 14 direct, 11 indirect [details]
Downloads 16226 total (37 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for carray-

[back to package description]
This package provides immutable and mutable arrays that can be used in foreign
calls.  They are 16-byte aligned by default to facilitate use of SIMD
instructions.  To build this package, use:

  runhaskell Setup.lhs configure
  runhaskell Setup.lhs build
  runhaskell Setup.lhs haddock          (optional)
  runhaskell Setup.lhs install

Then run the tests:

  cd tests
  ghc -O2 --make tests.hs -o tests && ./tests  # checks QC properties 

In addition, there are versions two of shootout entries which use arrays.
Modified versions of these are in the tests directory, using various array
implementations.  To build, benchmark, and check that results match, run:


Exposed Modules:

Data.Array.CArray             Immutable interface, enhanced for foreign calls,
                              multiple dimensions, mapping, and norms.

Data.Array.IOCArray	      Mutable interface, enhanced for foreign calls

Data.Array.CArray.Base        Internals