"A Tail-Recursive Semantics for Stack Inspections" by John Clements and Mathias Felleisen
 

Abstract

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.

Disciplines

Computer Sciences

Plum Print visual indicator of research metrics
PlumX Metrics
  • Citations
    • Citation Indexes: 9
  • Usage
    • Downloads: 290
    • Abstract Views: 43
  • Captures
    • Readers: 10
see details

Share

COinS
 

URL: https://digitalcommons.calpoly.edu/csse_fac/49