Content area
Statistical methods often are used to judge the efficiency of different implementation techniques for functional languages. However, the use of statistical methods has many problems due to the large number of parameters that can affect the results. A method is proposed to reduce the number of parameters by factoring out as many as possible when gathering performance statistics. The method is illustrated by describing 2 entirely different functional programming (FP) systems and applying the method to the 2 systems using a collection of benchmark programs. The resulting data demonstrate the efficiency difference between a simple strict interpreter for FP, a source language, and a general lazy interpreter for full lambda calculus. Furthermore, the figures for lambda-calculus interpreters on 2 radically different machines (IBM 370 architecture 3081 and IBM PC/AT) support the claim that much of the machine-dependent performance effects can be factored out.