massiv
Massiv (Массив) is an Array Library.
https://github.com/lehins/massiv
Version on this page: | 0.3.5.0 |
LTS Haskell 22.21: | 1.0.4.0 |
Stackage Nightly 2024-05-11: | 1.0.4.0 |
Latest on Hackage: | 1.0.4.0 |
BSD-3-Clause licensed by Alexey Kuleshevich
Maintained by [email protected]
This version can be pinned in stack with:
massiv-0.3.5.0@sha256:5992084ae8c4846b5b979bca36041dc280932d13e8b3bd9908a323be441fac39,6087
Module documentation for 0.3.5.0
Depends on 9 packages(full list with versions):
Used by 1 package in nightly-2019-06-26(full list with versions):
Changes
0.3.5
- Fix and export
guardNumberOfElements
Eq
instances forIndexException
andSizeException
- Fix
upsample
implementation and improve its performance. - Addition of
deleteRegionM
,deleteRowsM
anddeleteColumnsM
0.3.4
- Use the the new stateful workers feature of
scheduler-1.4.0
- Addition of:
randomArrayS
randomArrayWS
generateArrayWS
generateArrayLinearWS
mapWS
,forWS
,imapWS
andiforWS
- and
splitLinearlyWithStatefulM_
0.3.3
- Fix type signature for
createArray
. - Support for new version of
scheduler
- Addition of
randomArray
0.3.2.1
- Fix
sqrtA
function: #76
0.3.2
- Exported
withMArrayS
- Switch to pure exception throwing for
read'
,write'
,modify'
andswap'
.MonadThrow
constraint prevented those functions to be used inST
monad. - Addition of
quicksort
,quicksortM_
,unstablePartitionRegionM
andunsafeUnstablePartitionRegionM
0.3.1
- Addition of
rangeStepInclusive'
- Addition of
flatten
makeLoadArray
has been deprecated intounsafeMakeLoadArray
.- A new safe
makeLoadArrayS
has been aded. - Fix
infix 4
for(...)
and(..:)
range functions, so they can be easily composed with numeric operations - Addition of
imapSchedulerM_
andiforSchedulerM_
0.3.0
- Class hierarchy an associated methods:
getComp
moved fromConstruct
toLoad
Size
class lost array value parametere
.unsafeResize
andunsafeExtract
became their own classes
- New classes:
Resize
withunsafeResize
from oldSize
, except witharray
type parameter for applicability to mutableMArray
sExtract
withunsafeExtract
from oldSize
StrideLoad
, child ofLoad
ifoldlIO
and related no longer take list of capabilities, but instead respect the inner computation strategy. For that reason these folds have been removed:foldlOnP
,ifoldlOnP
,foldrOnP
,ifoldrOnP
fold
now is just like the one fromData.Foldable
takes no arguments and requires elements to be a monoidsingleton
does not accept computation strategy any more and createsSeq
array by default- New function
empty
. Ragged
functions are no longer exported, until the interface stabilizes and proper implementation of ragged arrays is in place.- Partial functions
read'
,write'
andswap'
now live in IO and throw proper exceptions. loadArray
is renamed toloadArrayM
and there is a new separate function (not part ofLoad
class) with the nameloadArray
that actually usesloadArrayM
- Moved
unsafeWithPtr
intoData.Massiv.Array.Unsafe
- Addition of:
unsafeArrayToForeignPtr
,unsafeMArrayToForeignPtr
,unsafeArrayFromForeignPtr
,unsafeArrayFromForeignPtr0
,unsafeMArrayFromForeignPtr
,unsafeMArrayFromForeignPtr0
- Addition of
castToByteString
,castFromByteString
- Addition of
makeUnsafeStencil
Window
now has anwindowUnrollIx2
field.- Addition of
insertWindow
anddropWindow
0.2.8.1
- Fix
sqrtA
function. Backport of #76
0.2.8
- Fixed a problem where convolution stencil size was not inverted, causing out of bounds memory read: #72
- Fixed an issue with windowed array where a stencil size is smaller than the array it is applied to
- Fixed incorrect cross-correlation stencil construction
0.2.7
- Fixed a serious performance regression in
Stencil
’sFunctor
instance, which was introduced in version0.2.3
- Added type and pattern synonyms
Sz
for future compatibility with version0.3
. Could be useful for migration.
0.2.6
- Add
expand*
family of functions. - Long awaited
makeArrayM
/makeArrayA
andmapM
/forM
/imapM
/iforM
/traverseA
/itraverseA
alnog with corresponding functions allowing for supplying representation. - Deprecate
mapP
andmapP_
in favor ofmapIO
andmapIO_
, while making latter respect theComp
. - Addition of a whole collection of mutable operators:
mapIO
/mapIO_
/imapIO
/imapIO_
/forIO
/forIO_
/iforIO
/iforIO_
createArray
/createArrayST
/createArrayST_
generateArray
/generateArrayIO
unfoldlPrim
/unfoldlPrim_
makeArrayA
,makeArrayAR
- Addition of cute synonyms:
(...)
and(..:)
0.2.5
- Fix for
insertDimension
#62
0.2.4.1
- Fix a bug in
zip
functions, where resulting array size would not take into account the size of one of the input arrays.
0.2.4
- Addition of inner folds:
ifoldlInner
,foldlInner
,ifoldrInner
andfoldrInner
- Addition of functions that can fold over any dimension (
foldlWithin
,foldlWithin'
, etc.) - Addition of
ifoldMono
andifoldSemi
, thus fixing: #54 - Improvement over manipulating index dimensions with addition of type level
Dimension n
data type and functions likegetDimension
,dropDimension
. - Addition of
insertDim
and type levelinsertDimension
as well aspullOutDim
andpullOutDimension
- Add partial
extractFromTo'
0.2.3
- Addition of
Profunctor
functions forStencil
:lmapStencil
,rmapStencil
andbimapStencil
- Addition of integration approximation:
Data.Massiv.Array.Numeric.Integral
- Removed overlapping instances for
DW
in favor of concrete instances. - Relaxed contraint restrictions on matrix multiplication
(|*|)
and slighly improved performance with rewrite rules to avoid double transform.
0.2.2
- Addition of
withMArray
,withMArrayST
. - Improved preformance of matrix multiplication
0.2.1
-
Addition of
Stride
and related functionscomputeWithStride
andcomputeWithStrideAs
. -
Addition of
Window
-
Addition of
loadArray
adnloadArrayWithStride
with default implementations that will become new loading functions in a subsequent release.loadArray
will replaceloadS
andloadP
, which will be deprecated in the next release and removed in the next major release. Some of this is discussed in #41 -
Addition of various conversion functions:
fromByteString
,toByteString
andtoBuilder
unwrapArray
,evalArray
,unwrapMutableArray
,evalMutableArray
unwrapNormalFormArray
,evalNormalFormArray
,unwrapNormalFormMutableArray
,evalNormalFormMutableArray
-
Fix:
Eq
instance forArray M ix e
0.2.0
- Fixed type signatures for
convertAs
andconvertProxy
- Added type constructors for
DW
andDI
Show
instance forDW
arrays.- Addition of
unsafeBackpermuteDW
. - Breaking changes:
- Create new
Data.Massiv.Array.Stencil.Unsafe
module and moveforStencilUnsafe
into it. - Rename of rank -> dimensions #25
- Removal
Eq
andOrd
instances forValue
#19 - Move border resolution to
mapStencil
frommakeStencil
.
- Removal
- Updated iterators
iterM
,iterM_
, etc. to have a separate step per dimension.
- Create new
0.1.6
Semigroup
andMonoid
instance forValue
.- Addition of
forStencilUnsafe
. - Fix
minimum
behaving asmaximum
. - Addition of
foldSemi
.
0.1.5
- Fix inverted stencil index calculation #12
- Add support for cross-correlation.
0.1.4
- Addition of Monoidal folding
foldMono
. - Expose
liftArray2
.
0.1.3
- Addition of
withPtr
andunsafeWithPtr
for Storable arrays - Addition of
computeInto
. - Exposed
makeWindowedArray
.
0.1.2
- Support for GHC-8.4 - instance of
Comp
forSemigroup
- Brought back support for GHC-7.10
0.1.1
- Addition of experimental
mapM
,imapM
,forM
,iforM
,generateM
andgenerateLinearM
functions. Fixes #5 - Addition of
Ord
instances for some array representations.
0.1.0
- Initial Release