Abstract
Transforming arrays of tuples into tuples of arrays and back again.
These are generally very cheap operations, as the internal compiler representation is always tuples of arrays.
Synopsis
val zip | [n] 'a 'b : | (as: [n]a) -> (bs: [n]b) -> *[n](a, b) |
val zip2 | [n] 'a 'b : | (as: [n]a) -> (bs: [n]b) -> *[n](a, b) |
val zip3 | [n] 'a 'b 'c : | (as: [n]a) -> (bs: [n]b) -> (cs: [n]c) -> *[n](a, b, c) |
val zip4 | [n] 'a 'b 'c 'd : | (as: [n]a) -> (bs: [n]b) -> (cs: [n]c) -> (ds: [n]d) -> *[n](a, b, c, d) |
val zip5 | [n] 'a 'b 'c 'd 'e : | (as: [n]a) -> (bs: [n]b) -> (cs: [n]c) -> (ds: [n]d) -> (es: [n]e) -> *[n](a, b, c, d, e) |
val unzip | [n] 'a 'b : | (xs: [n](a, b)) -> ([n]a, [n]b) |
val unzip2 | [n] 'a 'b : | (xs: [n](a, b)) -> ([n]a, [n]b) |
val unzip3 | [n] 'a 'b 'c : | (xs: [n](a, b, c)) -> ([n]a, [n]b, [n]c) |
val unzip4 | [n] 'a 'b 'c 'd : | (xs: [n](a, b, c, d)) -> ([n]a, [n]b, [n]c, [n]d) |
val unzip5 | [n] 'a 'b 'c 'd 'e : | (xs: [n](a, b, c, d, e)) -> ([n]a, [n]b, [n]c, [n]d, [n]e) |
Description
- ↑val zip [n] 'a 'b: (as: [n]a) -> (bs: [n]b) -> *[n](a, b)
Construct an array of pairs from two arrays.
- ↑val zip2 [n] 'a 'b: (as: [n]a) -> (bs: [n]b) -> *[n](a, b)
Construct an array of pairs from two arrays.
- ↑val zip3 [n] 'a 'b 'c: (as: [n]a) -> (bs: [n]b) -> (cs: [n]c) -> *[n](a, b, c)
As
zip2
, but with one more array.- ↑val zip4 [n] 'a 'b 'c 'd: (as: [n]a) -> (bs: [n]b) -> (cs: [n]c) -> (ds: [n]d) -> *[n](a, b, c, d)
As
zip3
, but with one more array.- ↑val zip5 [n] 'a 'b 'c 'd 'e: (as: [n]a) -> (bs: [n]b) -> (cs: [n]c) -> (ds: [n]d) -> (es: [n]e) -> *[n](a, b, c, d, e)
As
zip4
, but with one more array.- ↑val unzip3 [n] 'a 'b 'c: (xs: [n](a, b, c)) -> ([n]a, [n]b, [n]c)
As
unzip2
, but with one more array.