diff options
author | Robert Peterson <robert.peterson@gmail.com> | 2019-04-16 17:00:25 -0700 |
---|---|---|
committer | Louis Pilfold <louis@lpil.uk> | 2019-04-17 16:12:57 +0100 |
commit | 6ae1f2cf51868e2bd05ae47ec1cf09344dc1393b (patch) | |
tree | 57dc58419990cc6219be353f6f0b758024112ff2 /src | |
parent | 933dc2c4b723ad45d96a7bfc6fb0fb4651550d05 (diff) | |
download | gleam_stdlib-6ae1f2cf51868e2bd05ae47ec1cf09344dc1393b.tar.gz gleam_stdlib-6ae1f2cf51868e2bd05ae47ec1cf09344dc1393b.zip |
Add list:zip
Diffstat (limited to 'src')
-rw-r--r-- | src/list.gleam | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/list.gleam b/src/list.gleam index 83c22c4..5ea2ee3 100644 --- a/src/list.gleam +++ b/src/list.gleam @@ -4,7 +4,6 @@ // TODO: intersperse // TODO: sort // TODO: unique -// TODO: zip pub enum Empty = | Empty @@ -177,3 +176,11 @@ pub fn any(list, f) { } } } + +pub fn zip(l1, l2) { + case {l1, l2} { + | {[], _} -> [] + | {_, []} -> [] + | {[x1 | rest1], [x2 | rest2] } -> [ {x1, x2} | zip(rest1, rest2) ] + } +} |