Hostname: page-component-6766d58669-fx4k7 Total loading time: 0 Render date: 2026-05-20T16:52:11.301Z Has data issue: false hasContentIssue false

Types and trace effects of higher order programs

Published online by Cambridge University Press:  01 March 2008

CHRISTIAN SKALKA
Affiliation:
The University of Vermont, Burlington, Vermont, USA (email: skalka@cs.uvm.edu)
SCOTT SMITH
Affiliation:
The Johns Hopkins University, Baltimore, Maryland, USA (email: scott@cs.jhu.edu)
DAVID VAN HORN
Affiliation:
Brandeis University, Waltham, Massachusetts, USA (email: dvanhorn@cs.brandeis.edu)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the 'Save PDF' action button.

This paper shows how type effect systems can be combined with model-checking techniques to produce powerful, automatically verifiable program logics for higher order programs. The properties verified are based on the ordered sequence of events that occur during program execution, so-called event traces. Our type and effect systems infer conservative approximations of the event traces arising at run-time, and model-checking techniques are used to verify logical properties of these histories. Our language model is based on the λ-calculus. Technical results include a type inference algorithm for a polymorphic type effect system, and a method for applying known model-checking techniques to the trace effects inferred by the type inference algorithm, allowing static enforcement of history- and stack-based security mechanisms. A type safety result is proven for both unification and subtyping constraint versions of the type system, ensuring that statically well-typed programs do not contain trace event checks that can fail at run-time.

Information

Type
Articles
Copyright
Copyright © Cambridge University Press 2007
Submit a response

Discussions

No Discussions have been published for this article.