aiken/examples/acceptance_tests/013/lib/tests.ak

14 lines
288 B
Plaintext

pub fn unzip(xs: List<#(a, b)>) -> #(List<a>, List<b>) {
when xs is {
[] -> #([], [])
[#(a, b), ..rest] -> {
let #(a_tail, b_tail) = unzip(rest)
#([a, ..a_tail], [b, ..b_tail])
}
}
}
test unzip_1() {
unzip([#(1, "a"), #(2, "b")]) == #([1, 2], ["a", "b"])
}