Because Javascript is Javascript, this notebook fails if you have 0 as any of the elements, otherwise quite nice.
I think I would probably approached this naively with 2 filters and a zip, or in Haskell matched the args: pair arr@(a:b:rest) = [a, b]:pair rest