•To
support recursion, we need to allocate a new activation record for each
activation
•Dynamic
allocation: activation record allocated when function is
called
•For many
languages, like C, it can be deallocated when the function
returns
•A stack of
activation records: stack frames pushed on call, popped on
return