Mutable and immutable arrays

Version on this page:
LTS Haskell 9.0:
Stackage Nightly 2017-07-25:
Latest on Hackage:
BSD3 licensed
Maintained by

Module documentation for

There are no documented modules for this package.

In addition to providing the Data.Array module as specified in the Haskell 2010 Language Report, this package also defines the classes IArray of immutable arrays and MArray of arrays mutable within appropriate monads, as well as some instances of these classes.


Changelog for array package Jul 2017

  • Bundled with GHC 8.2.1
  • Overflow check in unsafeNewArray (#229)
  • Fix and simplify handling of Bool arrays
  • Export unsafeFreezeIOUArray from Data.Array.IO.Internals
  • Drop support for GHC versions prior to GHC 7.8 Apr 2016

  • Bundled with GHC 8.0.1
  • Use @since syntax in Haddock comments
  • Don't needlessly call bounds in Data.Array.Base.elems (#10014) Mar 2015

  • Bundled with GHC 7.10.1
  • Add role annotations for GHC >= 7.8 (#9220) Nov 2013

  • Update to Cabal 1.10 format
  • Remove NHC and Hugs specific code
  • Remove deprecated function exports Data.Array.IO.castIOUArray, Data.Array.MArray.unsafeFreeze, Data.Array.MArray.unsafeThaw, and Data.Array.ST.castSTUArray; These functions are still available from the Data.Array.Unsafe module. Sep 2012

  • Bundled with GHC 7.6.1
  • Fix inline rule shadowing warnings Feb 2012

  • Bundled with GHC 7.4.1
  • Add support for SafeHaskell
  • New Data.Array.IO.Safe module
  • New module
  • New module
  • New Data.Array.Storable.Internals module
  • New Data.Array.Storable.Safe module
  • New Data.Array.Unsafe module
Depends on:
Used by 936 packages:
AC-EasyRaster-GTK, Agda, AhoCorasick, Attrac, AutoForms, BNFC, BNFC-meta, Barracuda, Befunge93, BigPixel, Biobase, BoundedChan, CCA, CMCompare, CPL, CSPM-Frontend, CSPM-Interpreter, CSPM-ToProlog, CV, Cabal, Cabal-ide-backend, Chart, Chart-cairo, Chart-gtk, Chart-simple, Coadjute, Codec-Image-DevIL, Combinatorrent, ConcurrentUtils, Control-Monad-MultiPass, Control-Monad-ST2, Crypto, CurryDB, DP, DPM, Dao, Diff, DnaProteinAlignment, DrHylo, DynamicTimeWarp, Ebnf2ps, EdisonCore, EditTimeReport, Emping, Eq, EtaMOO, Etage-Graph, Euterpea, FComp, FM-SBLEX, ForSyDe, Foster, GHood, GLUT, GLUtil, GPipe-Collada, Gamgine, GeBoP, GlomeTrace, GlomeVec, GoogleCodeJam, Graph500, GraphHammer, GraphHammer-examples, GraphSCC, Graphalyze, Grempa, Grow, Gtk2hsGenerics, HARM, HAppS-Util, HCodecs, HDRUtils, HGL, HLearn-distributions, HList, HODE, HPDF, HRay, HSFFIG, HSoM, HStringTemplate, HTF, HTTP, HTicTacToe, HXQ, HarmTrace, Haschoo, HaskellForMaths, HaskellNet, Hieroglyph, Hipmunk, Hoed, Holumbus-Distribution, Hs2lib, HsASA, Hsed, IFS, IcoGrid, Imlib, JYU-Utils, KMP, Lattices, LinearSplit, ListLike, LslPlus, Lykah, MagicHaskeller, MazesOfMonad, MiniAgda, MissingH, Monadius, Monaris, Munkres, Munkres-simple, NewBinary, NoSlow, Noise, NumberSieves, OpenAFP, Operads, PageIO, Paraiso, PerfectHash, PlslTools, Pollutocracy, Pugs, RJson, RNAdesign, RNAdraw, Random123, Rasenschach, Rlang-QQ, SFont, SHA, STMonadTrans, SableCC2Hs, Sit, SpaceInvaders, TYB, TeaHS, Twofish, UISF, Vec, ViennaRNA-bindings, Webrexp, WordNet, WordNet-ghc74, YFrob, YampaSynth, ZMachine, abc-puzzle, abstract-deque, abstract-deque-tests, abstract-par-accelerate, accelerate-cuda, accelerate-examples, accelerate-io, acid-state, activehs, ad, adict, adjunctions, adp-multi, aeson-bson, air, air-extra, aivika, aivika-experiment-chart, aivika-transformers, ajhc, alex, alex-meta, algebra, algebraic-graphs, alms, alpha, alsa, alsa-midi, alsa-pcm, alsa-seq, annah, ansi-pretty, apelsin, api-tools, arbtt, arith-encode, arithmoi, array-forth, array-memoize, array-utils, arrowp, arrowp-qq, asil, aterm, atomo, attoparsec, attoparsec-text, atuin, babylon, battleships, beautifHOL, bed-and-breakfast, berp, bibdb, binary, binary-ext, binary-ieee754, binary-indexed-tree, binary-strict, binary-tagged, bindings-bfd, bindings-eskit, bio, biosff, bitarray, bitcoin-hs, bitmaps, bitwise, bktrees, bloomfilter, board-games, bond-haskell, brain-bleep, brainfuck, brainfuck-tut, brians-brain, btree-concurrent, buchhaltung, bytestring-csv, bytestring-show, c2hs, cabal-install, cabal-install-bundle, cabal-install-ghc72, cabal-install-ghc74, cairo, cake, cake3, calc, camfort, cao, cap, carray, cassava, cassava-conduit, cereal, cereal-ieee754, cereal-plus, cgrep, chalkboard, chalkboard-viewer, chalmers-lava2000, charset, chaselev-deque, chatter, checkers, chesshs, ciphersaber2, clafer, claferIG, clash-ghc, clash-prelude, cloudi, clutterhs, cmathml3, cmonad, cmph, cmu, cnc-spec-compiler, cndict, codec-libevent, cognimeta-utils, coincident-root-loci, collections, collections-api, collections-base-instances, combinat, combinat-diagrams, combinatorial-problems, comonad-extras, compact-map, concraft, concurrency, concurrent-dns-cache, condorcet, conductive-base, config-value, congruence-relation, conjure, containers, context-free-grammar, copilot-language, copilot-libraries, core-compiler, crc16-table, creatur, crf-chain1, crf-chain1-constrained, crf-chain2-generic, crf-chain2-tiers, critbit, cryptol, csound-expression-dynamic, csv-conduit, ctkl, ctpl, cubical, cudd, dao, darcs, darcs-beta, darcs-cabalized, darkplaces-text, data-accessor, data-dispersal, data-hash, data-memocombinators, data-structure-inferrer, dataenc, ddc-core, ddc-core-eval, ddc-core-flow, ddc-core-llvm, ddc-core-salt, ddc-core-simpl, ddc-core-tetra, ddc-source-tetra, deepseq, deepseq-bounded, definitive-base, definitive-filesystem, definitive-graphics, definitive-parser, definitive-reactive, definitive-sound, deiko-config, derive-trie, diagrams-cairo, diagrams-lib, diagrams-qrcode, diffarray, digest-pure, diophantine, disassembler, discrimination, disjoint-sets-st, distribution, djinn, dom-lt, dow, dph-base, dph-lifted-base, dph-lifted-copy, dph-lifted-vseg, dsp, dtab, duckling, edentv, edit-distance, egison, egison-tutorial, elsa, email, encoding, enumerate, epic, ersatz, ersatz-toysat, ethereum-client-haskell, eventstore, ewe, explore, exposed-containers, extcore, factory, fast-logger, fast-tags, fcd, feldspar-language, fft, fgl, fields, fixed-storable-array, fixfile, flat, flite, floatshow, flower, flowsim, fortran-src, fpnla-examples, frag, free-game, free-theorems-seq, freekick2, freesect, freetype2, frisby, fst, full-text-search, funsat, game-of-life, gdiff-ig, gemstone, generic-enum, geni-gui, genvalidity-text, geo-uk, geodetics, geohash, gf, ghc, ghc-events, ghc-events-parallel, ghc-parmake, ghc-srcspan-plugin, ghci, ghci-haskeline, ghci-ng, ginsu, gio, gll, glome-hs, glpk-hs, gmap, gmndl, gnomevfs, gnuplot, gochan, graph-serialize, graph-wrapper, graphs, greencard, greencard-lib, gridland, gstreamer, gtk, gtk-helpers, gtk-mac-integration, gtk-serialized-event, gtk2hs-buildtools, gtk3, gtk3-mac-integration, gtkimageview, gtksourceview2, gtksourceview3, hLLVM, hR, hVOIDP, hackage-server, hackport, haddock-api, haddock-leksah, hakaru, halfs, hamtmap, handa-opengl, hans, happindicator, happstack-util, happy, happy-meta, hardware-edsl, harmony, harpy, hascar, hashabler, hashing, haskell-cnc, haskell-modbus, haskell-mpi, haskell-platform-test, haskell-src, haskell-src-exts, haskell-tor, haskell-xmpp, haskell2010, haskell98, haskell98libraries, haskellscrabble, haskore, haskore-supercollider, haste-compiler, hax, haxr, hbayes, hburg, hchesslib, hdirect, hdph-closure, heapsort, helf, hemkay, hemkay-core, hermit, hetris, hfractal, hgal, hgalib, hgl-example, hichi, hierarchical-clustering, hills, hinterface, hjs, hlcm, hledger-lib, hmatrix, hmatrix-gsl, hmatrix-static, hmeap, hmeap-utils, hmm, hmm-hmatrix, hmp3, hmt, hogg, hommage, hommage-ds, hood, hood2, hoodie, hoodle-core, hopenpgp-tools, hopfield, hoq, hothasktags, hp2any-manager, hp2pretty, hpc-tracer, hprotoc, hprotoc-fork, hpuz, hpylos, hs-cdb, hs-java, hs-pgms, hs-re, hs2bf, hsXenCtrl, hsc3-graphs, hsc3-lang, hsc3-sf-hsndfile, hscamwire, hsdev, hsignal, hsmtpclient, hsntp, hspec-core, hspec-meta, hspresent, hstatistics, hstzaar, http-client, http-date, http-types, http2, hub, hubris, huff, hurdle, husk-scheme, husk-scheme-libs, hw-conduit, hw-json, hw-json-lens, hw-xml, hws, hydrogen-prelude, hylolib, ide-backend-server, idris, ige-mac-integration, illuminate, imperative-edsl, inf-interval, instrument-chord, integer-logarithms, intern, intero, intervals, intricacy, invariant, iterIO, ivory, ix-shapable, jack, jarfind, java-adt, jort, json, jukebox, jvm-parser, kan-extensions, kangaroo, keter, keys, keyvaluehash, kmp-dfa, knots, lambdabot-haskell-plugins, lambdacube-engine, language-c, language-c-comments, language-c-inline, language-c-quote, language-eiffel, language-fortran, language-go, language-java, language-java-classfile, language-javascript, language-lua, language-objc, language-python, language-spelling, language-sqlite, launchpad-control, lazyarray, lbfgs, lcs, leksah, lens, lens-prelude, lens-regex, lgtk, lhae, libcspm, libgraph, life, lifter, lighttpd-conf, lighttpd-conf-qq, lio-eci11, liquid-fixpoint, liquidhaskell, llvm-analysis, llvm-data-interop, llvm-general, llvm-general-quote, llvm-hs, llvm-pretty-bc-parser, lmdb, logfloat, logic-TPTP, lostcities, lua-bytecode, lvmlib, mage, manatee-core, manatee-ircclient, mandulia, mars, mathlink, matlab, matrix-market-pure, maxent-learner-hw, maxent-learner-hw-gui, mediabus, mediabus-rtp, mediawiki2latex, meta-par-accelerate, microlens-ghc, mighttpd2, minecraft-data, minilens, mixed-strategies, monad-memo, monad-par, monadic-arrays, mongoDB, monoids, moo, morfette, morte, mps, mrifk, multifocal, myTestlll, nbt, nc-indicators, nehe-tuts, nettle-openflow, netwire-vinylglfw-examples, network-house, network-rpca, neural, newt, noether, nofib-analyse, nofib-analyze, nptools, ntha, numeric-prelude, numeric-quest, obdd, oberon0, obj, octopus, omega, pack, packedstring, packman, palette, palindromes, pandoc, pango, paragon, parallel, parconc-examples, parport, parse-dimacs, parsestar, passage, patch-image, pathfindingcore, pcre-less, pcre-utils, pec, perdure, perfecthash, persistable-record, persistent-equivalence, pgm, phasechange, phonetic-code, phooey, pi-forall, picoparsec, piet, pinch, pisigma, plot, plugins, png-file, pngload, pngload-fixed, pointfree, poker-eval, polyseq, poppler, postgresql-typed, pregame, pretty-show, processor-creative-kit, protocol-buffers, protocol-buffers-fork, pugs-compat, pugs-hsregex, punkt, pure-zlib, pvd, qrcode, qudb, queuelike, quickcheck-instances, quickspec, rad, rand-vars, random-access-list, random-extras, raw-feldspar, reactivity, reactor, redHandlers, reducers, references, regex, regex-base, regex-compat, regex-compat-tdfa, regex-do, regex-easy, regex-examples, regex-pcre, regex-pcre-builtin, regex-pcre-text, regex-posix, regex-posix-unittest, regex-tdfa, regex-tdfa-pipes, regex-tdfa-rc, regex-tdfa-text, regex-tdfa-unittest, regex-tdfa-utf8, regexchar, reinterpret-cast, relacion, relation, relational-query, remote-debugger, representable-functors, reversi, riak-protobuf, risc386, roguestar-engine, rounding, rsagl, rsagl-frp, rsagl-math, rtcm, ruff, ruler-core, safecopy, safecopy-store, satchmo, satchmo-backends, satchmo-examples, satchmo-funsat, satchmo-toysat, sbp, sbv, scan-vector-machine, scenegraph, scrabble-bot, scyther-proof, sdr, selectors, seqaid, sequor, setdown, sexp-grammar, shuffle, sigma-ij, simple-effects, simple-stacked-vm, simplesmtpclient, sindre, sized-types, smt-lib, smtp-mail, snappy-framing, sonic-visualiser, sound-collage, sprinkles, sstable, static-hash, stb-truetype, stm, stm-io-hooks, storable-static-array, store, streaming-commons, strict, stringsearch, structured-mongoDB, subhask, suffix-array, supercollider-midi, svm, swift-lda, syb-with-class, syfco, sync-mht, synthesizer, synthesizer-core, synthesizer-midi, system-gpio, tamarin-prover, tamarin-prover-theory, tar, tateti-tateti, tbox, tempus, term-rewriting, text, text-format, text-show, textPlot, threadscope, threefish, tiger, timberc, time-series, time-warp, tip-lib, tofromxml, toml-parser, toolshed, topkata, toysolver, triangulation, trifecta, tskiplist, twee, twisty, type-structure, typed-streams, uAgda, uhc-light, uhc-util, uni-util, unicode-names, unicode-properties, union-find-array, unlambda, unm-hip, unscramble, uuagc, uuagc-bootstrap, vacuum, vcache-trie, verilog, vintage-basic, vision, vty-examples, vty-ui, wai-app-file-cgi, wai-devel, warp, webapp, wedged, weighted-regexp, why3, wordexp, wordsearch, wrecker, wxcore, x-dsp, xeno, xilinx-lava, xml2x, xsact, yesod-dsl, yi-core, yi-language, yi-misc-modes, yi-mode-haskell, yi-mode-javascript, yxdb-utils, zcache, zeno, zim-parser, zip-archive, ztail
comments powered byDisqus