AK
Size: a a a
AK
p
p
p
p
A
map2 : (a -> b -> c) -> List a -> List b -> List c
map2 f xs ys =
let
helper maybe =
case maybe of
Just xs_ -> xs_
Nothing -> []
ab = (List.head xs, List.head ys)
as_ = helper (List.tail xs)
bs = helper (List.tail ys)
in
case ab of
(Just x, Just y) ->
(f x y) :: zipWith f as_ bs
(_, _) ->
[]
DK
DK
k
map2 : (a -> b -> c) -> List a -> List b -> List c
map2 f xs ys =
let
helper maybe =
case maybe of
Just xs_ -> xs_
Nothing -> []
ab = (List.head xs, List.head ys)
as_ = helper (List.tail xs)
bs = helper (List.tail ys)
in
case ab of
(Just x, Just y) ->
(f x y) :: zipWith f as_ bs
(_, _) ->
[]
K
map2 : (a -> b -> c) -> List a -> List b -> List c
map2 f xs ys =
let
helper maybe =
case maybe of
Just xs_ -> xs_
Nothing -> []
ab = (List.head xs, List.head ys)
as_ = helper (List.tail xs)
bs = helper (List.tail ys)
in
case ab of
(Just x, Just y) ->
(f x y) :: zipWith f as_ bs
(_, _) ->
[]
map2 : (a -> b -> c) -> List a -> List b -> List cМожно и без
map2 f =
let
loop xs ys =
case (xs, ys) of
(x :: xs1, y :: ys1) -> f x y :: loop xs1 ys1
_ -> []
in
loop
loop
, но будет чуть больше аллокаций.List
стандартной библиотеке elm нет zipWith
.zipWith
не работал бы до тех пор, пока один из списков не кончится?map2 = zipWith
.zipWith
для остального списка.helper
- это Maybe.withDefault []
.A
A
map2 : (a -> b -> c) -> List a -> List b -> List cМожно и без
map2 f =
let
loop xs ys =
case (xs, ys) of
(x :: xs1, y :: ys1) -> f x y :: loop xs1 ys1
_ -> []
in
loop
loop
, но будет чуть больше аллокаций.List
стандартной библиотеке elm нет zipWith
.zipWith
не работал бы до тех пор, пока один из списков не кончится?map2 = zipWith
.zipWith
для остального списка.helper
- это Maybe.withDefault []
.A
A
map2 : (a -> b -> c) -> List a -> List b -> List cМожно и без
map2 f =
let
loop xs ys =
case (xs, ys) of
(x :: xs1, y :: ys1) -> f x y :: loop xs1 ys1
_ -> []
in
loop
loop
, но будет чуть больше аллокаций.List
стандартной библиотеке elm нет zipWith
.zipWith
не работал бы до тех пор, пока один из списков не кончится?map2 = zipWith
.zipWith
для остального списка.helper
- это Maybe.withDefault []
.K
MP
AP
AP
AP