Security folklore holds that a security mechanism based on stack inspection is incompatible with a global tail call optimization policy. An implementation of such a language may have to allocate memory for a source-code tail call, and a program that uses only tail calls (and no other memory-allocating construct) may nevertheless exhaust the available memory. In this paper, we prove this widely held belief wrong. We exhibit an abstract machine for a language with security stack inspection whose space consumption function is equivalent to that of the canonical tail call optimizing abstract machine. Our machine is surprisingly simple and suggests that tail-calls are as easy to implement in a security setting as they are in a conventional one. © Springer-Verlag Berlin Heidelberg 2003.
CITATION STYLE
Clements, J., & Felleisen, M. (2003). A tail-recursive semantics for stack inspections. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2618, 22–37. https://doi.org/10.1007/3-540-36575-3_3
Mendeley helps you to discover research relevant for your work.