Accurate Step Counting

作者: Catherine Hope , Graham Hutton

DOI: 10.1007/11964681_6

关键词: Machine codeData structureFunctional programmingAlgorithmFunction (mathematics)Process (computing)Range (mathematics)Computer scienceAbstract machineProgram transformationExpression (mathematics)

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

参考文章(18)
Jozef Gruska, Foundations of Computing ,(1997)
Simon Peyton Jones, None, Haskell 98 language and libraries : the revised report Cambridge University Press. ,(2003)
Graham Hutton, Joel J. Wright, Calculating an Exceptional Machine trends in functional programming. pp. 49- 64 ,(2005)
Mads Sig Ager, From natural semantics to abstract machines logic based program synthesis and transformation. pp. 245- 261 ,(2004) , 10.1007/11506676_16
Mads Sig Ager, Olivier Danvy, Jan Midtgaard, A functional correspondence between call-by-need evaluators and lazy abstract machines Information Processing Letters. ,vol. 90, pp. 223- 232 ,(2004) , 10.1016/J.IPL.2004.02.012
Patrick M. Sansom, Simon L. Peyton Jones, Formally based profiling for higher-order functional languages ACM Transactions on Programming Languages and Systems. ,vol. 19, pp. 334- 385 ,(1997) , 10.1145/244795.244802
GRAHAM HUTTON, A tutorial on the universality and expressiveness of fold Journal of Functional Programming. ,vol. 9, pp. 355- 372 ,(1999) , 10.1017/S0956796899003500