pub fn pop<T: Clone>(a: &[T]) -> Vec<T>
JS pop(array) -> subset(array, 0, -2) meaning drop last element. We replicate safe behavior (no negative wrap).