Accumulators for List Processing
lConsider a definition of reverse:

reverse(L) = reverse(L, [ ]);

reverse([ ], A) => A;

reverse([E | L], A) => reverse(L, [E | A]);

lWhich argument is an accumulator?
lIs this reverse tail-recursive?