this is important but i think most lispers and functional programers still don't know it.
Functional Programing: stop using recursion, cons. Use map & vectors.
〈Guy Steele on Parallel Programing〉
btw, lists (as cons, car, cdr) in the lisp world has always been some kinda cult. Like, if you are showing some code example and you happened to use lisp vector datatype and not cons (lists) and it doesn't really matter in your case, but some lisper will always rise up to bug you, either as innocent curious question or attacking you for not “understanding” lisp. (just as other idiocies happen in other lang that lispers see but other langs don't see)