Publication View

Accurate Step Counting (2005)

Abstract
Starting with an evaluator for a language, an abstract machine for the same language can be mechanically derived using successive program transformations. This has relevance to studying both the space and time properties of programs because these can be estimated by counting transitions of the abstract machine and measuring the size of the additional data structures needed, such as environments and stacks. In this article we use this process to derive a function that accurately counts the number of steps required to evaluate expressions in a simple language.

Publication details
Download http://eprints.nottingham.ac.uk/archive/00000247/
http://eprints.nottingham.ac.uk/archive/00000247/01/stepCounting.pdf
Repository Nottingham ePrints (United Kingdom)
Type Conference Paper

Cited publications (1)
QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs (1999)