foldのcallbackの引数の順序

絶対おかしいと思うんだけどどうしてこうなっているのか…

(fold list 0 '(1 2 3) '(4 5 6))
; => (3 6 (2 5 (1 4 0)))

この仕様の所為で,foldの実装で素直にapplyできないんだけど…
実装が複雑になってもコストは同じなんだろうか.
意味的にも固定数のものが可変長のものより先にくる方が自然だと思うんだけど.