(f a) rax rdx rbx Stack A E env +---------+ eval f = | fa | fa fe e0 push fe; push fa | fe | | ... | . . eval a = av ae e0 apply: rax rdx rbx - pop fa -> tmp Stack A E env - xchg [sp], env +---------+ - call tmp | ret_adr | av ae fe | e0 | | ... | . .