The algebra of functional programs: Function level reasoning, linear equations, and extended definitions

  • John Backus
Invited Lectures
Part of the Lecture Notes in Computer Science book series (LNCS, volume 107)


Linear Form Function Level Object Level Functional Program Proper Definition 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [A&M79]
    ARBIB, M.A. and MANES, E.G. The pattern-of-calls expansion is the canonical fixpoint for recursive definitions. Tech. Rep. Math. and Statistics, Univ. of Mass., Amherst, Mass., Jan. 1979.Google Scholar
  2. [A&M80]
    ARBIB, M.A. and MANES, E.G. Partially additive categories and flow-diagram semantics. J. Algebra 62, 1, Jan. 1980.Google Scholar
  3. [Arno80]
    ARNOLD, M. (Private communication), May, 1980.Google Scholar
  4. [B&D77]
    BURSTALL, R.M. and DARLINGTON, J. A transformation system for developing recursive programs. JACM 24, 1, Jan. 1977.Google Scholar
  5. [B&G77]
    BURSTALL, R.M. and GOGUEN, J.A. Putting theories together to make specifications. Proc. International Joint Conference on Artificial Intelligence, Cambridge, Mass. 1977.Google Scholar
  6. [B&G80]
    BURSTALL, R.M. and GOGUEN, J.A. The semantics of Clear, a specification language. Proc. 1979 Copenhagen Winter School on Abstract Software Specifications, Copenhagen. Feb. 1980.Google Scholar
  7. [B&J66]
    BOHM, C. and JACOPINI, G. Flow diagrams, Turing machines, and languages with only two formation rules. CACM 9, 5, May 1966.Google Scholar
  8. [B&M79]
    BOYER, R.S. and MOORE, J.S. A computational logic. Academic Press, New York, 1979.Google Scholar
  9. [Back73]
    BACKUS, J. Programming language semantics and closed applicative languages. Conf. Record, ACM Symp. on Principles of Programming Languages, Boston, Mass. Oct. 1973.Google Scholar
  10. [Back78]
    BACKUS, J. Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. CACM 21, 8, Aug. 1978.Google Scholar
  11. [Back79]
    BACKUS, J. On extending the concept of "program" and solving linear functional equations. Draft paper distributed at Summer Workshop on Programming Methodology, Univ. of Calif, Santa Cruz, Aug. 1979.Google Scholar
  12. [Burg73]
    BURGE, W.H. Even more structured programming. Tech. Rept. RC4604 IBM Thos. J. Watson Research Center, Yorktown Hts, NY, Oct. 1973.Google Scholar
  13. [Burs69]
    BURSTALL, R.M. Proving properties of programs by structural induction. Computer J. 12, 1, Feb. 1969.Google Scholar
  14. [Cadi72]
    CADIOU, J.M. Recursive definitions of partial functions and their computations. PhD Thesis, Computer Science Dept., Stanford Univ., Stanford, Calif. Mar. 1972.Google Scholar
  15. [Chur41]
    CHURCH, A. The calculi of lambda-conversion. Princeton Univ. Press, Princeton, NJ. 1941.Google Scholar
  16. [Curr58]
    CURRY, H.B. and FEYS, R. Combinatory logic. North-Holland, Amsterdam, 1958 (second printing 1968)Google Scholar
  17. [deB&S69]
    deBAKKER, J.W. and SCOTT, D. A theory of programs. (Unpublished memo.) Aug. 1969.Google Scholar
  18. [GH&M78]
    GUTTAG, J.V., HOROWITZ, E., and MUSSER, D.R. Abstract data types and software validation. CACM 21, 12, Dec. 1978.Google Scholar
  19. [GTW&W77]
    GOGUEN, J.A., THATCHER, J.W., WAGNER, E.G., and WRIGHT, J.B. Initial algebra semantics and continuous algebras. JACM 24, 1, Jan. 1977.Google Scholar
  20. [Hoar69]
    HOARE, C.A.R. An axiomatic basis for computer programming. CACM 12, 10, Oct. 1969.Google Scholar
  21. [Klee52]
    KLEENE, S.C. Introduction to metamathematics. D. van Nostrand, Princeton, NJ 1952.Google Scholar
  22. [Land64]
    LANDIN, P.J. The mechanical evaluation of expressions. Computer J. 6, 4, 1964.Google Scholar
  23. [MNV73]
    MANNA, Z., NESS, S., and VUILLEMIN, J. Inductive methods for proving properties of programs. CACM 16, 8, Aug. 1973.Google Scholar
  24. [M&P70]
    MANNA, Z. and PNUELI, A. Formalization of properties of functional programs. JACM 17, 3, July 1970.Google Scholar
  25. [Mart80]
    MARTIN, J.J. Typed functional programming systems. Tech. Rept. Comp. Sci. Dept., Virginia Polytechnic Inst. and State Univ. Blacksburg, VA. 1980.Google Scholar
  26. [McCa63]
    MCCARTHY, J. A basis for a mathematical theory of computation. (in) Computer Programming and Formal Systems, P. Braffort and D. Hirshberg (eds.), North Holland, Amsterdam, 1963.Google Scholar
  27. [Miln76]
    MILNER, R. Models of LCF. Mathematical Centre Tracts 82, Univ. of Edinburgh, Edinburgh, 1976.Google Scholar
  28. [Morr71]
    MORRIS, J.H. Jr. Another recursion induction principle. CACM 14, 5, May 1971.Google Scholar
  29. [Muss78]
    MUSSER, D.R. Convergent sets of rewrite rules for abstract data types. Tech. Rept., Univ. of So. Calif. Information Scis. Inst., Marina del Rey, Calif. Dec. 1978.Google Scholar
  30. [Naur66]
    NAUR, P. Proof of algorithms by general snapshots. BIT 6, 1966.Google Scholar
  31. [Park69]
    PARK, D. Fixpoint induction and proofs of program properties. (in) Machine Intelligence 5, B. Meltzer and D. Michie, (eds.)Google Scholar
  32. [Raym75]
    RAYMOND, F.H. Note sur l'algebre des fonctions. R.A.I.R.O. R-3, Dec. 1975.Google Scholar
  33. [Raym77]
    RAYMOND, F.H. Note sur la suppression des étiquettes en programmation. R.A.I.R.O. 11, 1, 1977.Google Scholar
  34. [Scot70]
    SCOTT, D. Outline of a mathematical theory of computation. Proc. Fourth Annual Princeton Conf. on Information Sciences and Systems, Princeton Univ. 1970.Google Scholar
  35. [Turn79]
    TURNER, D.A. SASL language manual. Tech. Rept., Univ. of Kent, Canterbury, Aug. 1979.Google Scholar
  36. [Turn79a]
    TURNER, D.A. A new implementation technique for applicative languages. Software—Practice and Experience 9, 1979.Google Scholar
  37. [W&S73]
    WALKER, S.A. and STRONG, H.R. Characterizations of flowchartable recursions. J. Computer and System Sciences 7, 4, Aug. 1973.Google Scholar
  38. [Will80]
    WILLIAMS, J. H. On the development of the algebra of functional programs. Tech. Rept. RJ2983, IBM Research Lab., San Jose, Calif. Oct. 1980.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1981

Authors and Affiliations

  • John Backus
    • 1
  1. 1.IBM Research LaboratorySan JoseUSA

Personalised recommendations