Compiling lambda-expressions using continuations and factorizations

Computer Languages - Tập 3 - Trang 241-263 - 1978
Mitchell Wand1, Daniel P. Friedman1
1Indiana University, Bloomington, IN 47401, U.S.A.

Tài liệu tham khảo

Arbib, 1974 Auslander, 1978, Systematic recursion removal, Comm. ACM, 21, 127, 10.1145/359340.359344 Bobrow, 1974, New programming languages for artificial intelligence research, Computing Surveys, 6, 155, 10.1145/356631.356632 Bobrow, 1973, A model and stack implementation of multiple environments, Comm. ACM, 16, 591, 10.1145/362375.362379 Bruno, 1976, Code generation for a one-register machine, J. ACM, 23, 502, 10.1145/321958.321971 Church, 1941, The calculi of lambda-conversion, 6 Fischer, 1972, Lambda-calculus schemata, 7, 104 Friedman, 1974 Friedman, 1978, Functional combination, Computer Languages, 3, 31, 10.1016/0096-0551(78)90004-8 Friedman, 1976, Cons should not evaluate its arguments, 257 Friedman, 1978, Applicative multiprogramming, Indiana Univ. Computer Science Department, Technical Report No. 72 Harrison, 1977, A new strategy for code generation—the general purpose optimizing compiler, 29 Hewitt, 1977, Viewing control structures as patterns of passing messages, Artif. Intelligence, 8, 323, 10.1016/0004-3702(77)90033-9 Johnston, 1971, The contour model of block structured processes, 6, 55 Knuth, 1974, Structured programming with Goto statements, Comput. Surveys, 6, 261, 10.1145/356635.356640 Landin, 1964, The mechanical evaluation of expressions, Comput. J., 6, 308, 10.1093/comjnl/6.4.308 Loveman, 1977, Program improvement by source-to-source transformation, JACM, 24, 121, 10.1145/321992.322000 McCarthy, 1965 MacLane, 1971 Minsky, 1975, A Framework for Representing Knowledge, 211 Moses, 1970, The Function of FUNCTION in LISP, SIGSAM Bull., 15, 13, 10.1145/1093410.1093411 Reynolds, 1972, Definitional interpreters for higher-order programming languages, 717 Reynolds, 1974, On the relation between direct and continuation semantics, 141 Reynolds, 1977, Semantics of the domain of flow diagrams, JACM, 24, 484, 10.1145/322017.322028 Russell, 1977, On an equivalence between continuation and stack semantics, Acta Informatica, 8, 113, 10.1007/BF00289244 Sethi, 1970, The generation of optimal code for arithmetic expressions, JACM, 17, 715, 10.1145/321607.321620 Steele, 1976, LAMBDA: The ultimate declarative, Mass. Inst. of Tech., AI Memo 379 Strachey, 1974, Continuations: a mathematical semantics for handling full jumps, Oxford University Computing Laboratory, Technical Monograph PRG-11 Sussman, 1975, SCHEME: an interpreter for extended lambda calculus, Mass. Inst. of Tech., AI Memo 349 Tennent, 1976, Denotational semantics of programming languages, Comm. ACM, 19, 437, 10.1145/360303.360308 M. Wand. Continuation-based program transformation strategies, JACM, to be published. Wand, 1977, Final algebra semantics and data type extensions, Indiana Univ. Computer Science Department, Technical Report No. 65 Wand, 1977, Algebraic theories and tree rewriting systems, Indiana Univ. Computer Science Department, Technical Report No. 66 Weissman, 1966 Wise, 1975, Boolean-valued loops, BIT, 15, 431, 10.1007/BF01931683 Wulf, 1974, HYDRA: the kernel of a multiprocessor operating system, Comm. ACM, 17, 337, 10.1145/355616.364017 Wulf, 1975