diff options
| author | Tom Smeding <tom@tomsmeding.com> | 2025-10-30 15:56:35 +0100 |
|---|---|---|
| committer | Tom Smeding <tom@tomsmeding.com> | 2025-10-30 15:56:35 +0100 |
| commit | 4d456e4d34b1e4fb3725051d1b8a0c376b704692 (patch) | |
| tree | 1385217efcc0b58ddb028e707e6a5a36b884ed65 /src/Array.hs | |
| parent | 0e8e59c5f9af547cf1b79b9bae892e32700ace56 (diff) | |
Implement reshape
Diffstat (limited to 'src/Array.hs')
| -rw-r--r-- | src/Array.hs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Array.hs b/src/Array.hs index 707dce2..6ceb9fe 100644 --- a/src/Array.hs +++ b/src/Array.hs @@ -91,6 +91,11 @@ arrayFromList sh l = Array sh (V.fromListN (shapeSize sh) l) arrayToList :: Array n t -> [t] arrayToList (Array _ v) = V.toList v +arrayReshape :: Shape n -> Array m t -> Array n t +arrayReshape sh (Array sh' v) + | shapeSize sh == shapeSize sh' = Array sh v + | otherwise = error $ "arrayReshape: different shape size than original (" ++ show sh' ++ " -> " ++ show sh ++ ")" + arrayUnit :: t -> Array Z t arrayUnit x = Array ShNil (V.singleton x) |
