Skip to main content
Log in

Understanding Programming Languages

  • Original Paper
  • Published:
Minds and Machines Aims and scope Submit manuscript

Abstract

We document the influence on programming language semantics of the Platonism/formalism divide in the philosophy of mathematics.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

Notes

  1. (White 2004) provides a fine survey.

  2. Note that any such evaluation mechanism has to be measured against the axioms/reduction rules. These have semantic priority.

  3. The unyped nature of the calculus made it hard to see how a set-theoretic model could be found in ZF. This was Scott’s main objection (Scott 1970).

  4. We shall say more about this later when we discuss formalism a bit more carefully.

  5. The sets were complete lattices and the function space the space of continuous functions. Since then there have been many variations on this theme.

  6. It would seem that such knowledge must be taken as knowledge of sets rather than knowledge that some proposition about sets is true. At least this is the interpretation that leads to Platonism.

  7. Maddy (1990) clearly summarises, it up until 1990.

  8. There are several other anti-realist options but we have no space to consider their impact on the current issue. One of some significance is provided by Wittgenstein’s account of concept formation.

  9. A controversial but interesting reading of the Wittgenstein’s account of rule-following is Kripke’s. Apparently, Wittgenstein is voicing a skeptical paradox and offering a skeptical solution. This interpretation drives one to conclude that there is no fact of the matter as to the correct application of a rule. However, most contemporary interpretations do not see Wittgenstein as arguing for such a skeptical position.

References

  • Barendregt, H. P. (1992). Lambda Calculus With Types. Handbook of Logic in Computer Science. In S. Abramsky, D. M. Gabbay, & T. S. E. Maibaum (Eds.), Oxford Science Publications (pp. 118–310).

  • Benacerraf, P. (1996). What mathematical truth could not be -I.1973. Reprinted in Benacerraf and His Critics, Morton, Adam (Ed.), Blackwell.

  • Burstall, R., & Honsell, F. (1988). A natural deduction treatment of operational semantics. In Proceedings of the 8th Conf. on Foundations of Software Technology and Theoretical Computer Science, volume LNCS, Vol. 338 (pp. 250–269). NewYork: Springer-Verlag.

  • Church, A. (1941). The calculi of lambda conversion. Princeton: Princeton University Press.

  • Dummett, M. (1975) What is a theory of meaning ? In mind and language. Oxford: Oxford University Press.

    Google Scholar 

  • Dummett, M. (1976). What is a theory of meaning II. In J. McDowell, & G. Evans (Eds.), Truth and meaning: Essays in semantics (pp. vii-xxiii). Oxford: Clarendon Press.

    Google Scholar 

  • Feferman et al (Eds.) (1986, 1990, 1995), Gödel. Collected works, Vols. I–III. Oxford: Oxford University Press.

  • Feferman, S. (1979). Constructive theories of functions and classes. In: M. Boffa, & D. van Dalen, K. Mc Aloon (Eds.), Logic Colloquium ’78 (pp. 159–225). Amsterdam: North Holland.

    Google Scholar 

  • Field, H. (1982). Realism, mathematics, and modality. Oxford: Basil Blackwell.

    Google Scholar 

  • Gödel, K. (1931) Undecidable diophantine propositions. In Collected Works III:164–175.

  • Gödel, K. (1951/1995). Some basic theorems on the foundations of mathematics and their implications. In Collected works III (pp. 304–323). Oxford: Oxford University Press.

  • Gödel K. (1983) What is cantor’s continuum problem? reprinted in Benacerraf and Putnam’s collection philosophy of mathematics (2nd ed.). Cambridge University Press.

  • Hersh, R. (1997). What is mathematics, really? London: Vintage.

    Google Scholar 

  • Hindley, J. R., & Seldin, J. P. (1986). Introduction to combinators and the λ-calculus. London: London Mathematical Society Texts.

    Google Scholar 

  • Hoare, C. A. R. (1969). An axiomatic basis for computer programming. Communications of the ACM, 12(10), 576585, October.

    Article  Google Scholar 

  • Landin, P. J. (1964). The mechanical evaluation of expressions. Computer Journal, 6, 308–320.

    MATH  Google Scholar 

  • Landin, P. J. (1966). The next 700 programming languages Landin PJ. Communications of the ACM, 9(3), 157–403.

    Article  MATH  Google Scholar 

  • Miller, A. (1998). Philosophy of language (London: University College London Press/Routledge, Fundamentals of Philosophy Series, xviii + 348 pp).

  • Maddy, P. (1990). Realism in mathematics. Oxford: Oxford University Press.

  • Maddy, P. (1997). Naturalism in mathematics. Oxford: Oxford University Press.

  • McGettrick, A. D. (1980). The Definition of Programming Languages. New York: Cambridge University Press, NY, USA, ISBN:0521226317.

    MATH  Google Scholar 

  • Milne, R., & Strachey, C. A. (1977). Theory of programming language semantics. New York, NY, USA: Halsted Press, ISBN:0470989068.

    Google Scholar 

  • Moore, G. H. (1982). Zermelo’s axiom of choice: Its origins, development, and influence. Berlin: Springer-Verlag.

  • Pasquale, F. (1994). Wittgenstein’s philosophy of mathematics. London: Routledge.

    MATH  Google Scholar 

  • Plotkin, G. D., (1981). A structural approach to operational semantics. Technical Report DAIMI FN-19, Computer Science Department, Aarhus University, Aarhus, Denmark, September.

  • Plotkin, G. D. (1975). Call-by-name, call-by-value, and the λ-calculus. Theoretical Computer Science, 1, 125–159.

    Article  MATH  Google Scholar 

  • Potter, M. (2004). Set Theory and Its Philosophy: a Critical Introduction. Oxford: Oxford University Press. ISBN 0199270414.

  • Reynolds, J. (1998). Definitional interpreters for higher-order programming languages. Higher-order and symbolic computation, 11(4):363–397, 1998. Reprinted from the proceedings of the 25th ACM National Conference (1972), with a foreword.

  • Rydeheard, D. E., & Burstall, R. M. (1988). Computational category theory. Prentice Hall: New York.

    MATH  Google Scholar 

  • Scott, D. S. (1970). Outline of a mathematical theory of computation. Technical Monograph PRG-2. Oxford: Oxford University Computing Laboratory, England, November.

    Google Scholar 

  • Scott, D. S. (1970). OWHY. Unpublished manuscript.

  • Scott, D. S. (1972). Continuous lattices. In F. W. Lawvere, (Eds.), Toposes, algebraic geometry, and logic, number 274 in Lecture notes in mathematics (pp. 97–136), Springer-Verlag.

  • Scott, D. S. (1974). Axiomatizing set-theory. In Jech, J. Thomas, (Ed.), Axiomatic Set Theory II, Proceedings of Symposia in Pure Mathematics 13. American Mathematical Society: 20714

  • Shapiro, S. (1997). Philosophy of mathematics: Structure and ontology (p. xii + 279).Oxford: Oxford University Press.

  • Stoy, J. E. (1977). Denotational semantics: The Scott-Strachey approach to programming language theory. Cambridge, MA: MIT Press.

    Google Scholar 

  • Strachey, C. (1967). Fundamental concepts in programming languages Strachey. Oxford: C. Oxford University Press, Oxford.

    Google Scholar 

  • Strachey, C. (1966). Towards a formal semantics. In Formal Language Description Languages for Computer Programming, North Holland, pp. 198–220.

  • Scott, D. S., & Strachey, P. (1974). The varieties of programming languages. Oxford Computer Lab

  • Scott, D. S., & Strachey, C. (1971). Toward a mathematical semantics for computer languages. Programming Research Group Technical Monograph PRG-6, Oxford Univ. Computing Lab.

  • White, G. (2004). The philosophy of computer languages. In L. Floridi (Ed.), The blackwell guide to the philosophy of computing & information. Oxford: Blackwell.

    Google Scholar 

  • Wang, H. (1974). From mathematics to philosophy. London: Routledge & Kegan Paul

    MATH  Google Scholar 

  • Wittgenstein, L. (1939). Wittgenstein’s lectures on the foundations of mathematics, Cora Diamond (Ed.), Cambridge

  • Wittgenstein, L. (1978). Remarks on the Foundation of Mathematics, (3rd ed.). In G. H. von Wright, R. Rhees, & G. E. M. Anscombe, trans. G. E. M. Anscombe. Basil Blackwell, Oxford.

  • Wittgenstein, L. (1953). Philosophical Investigations. Oxford: Basil Blackwell

    Google Scholar 

  • Winskel, G. (1993). Formal semantics of programming languages. Cambridge: MIT press

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Raymond Turner.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Turner, R. Understanding Programming Languages. Minds & Machines 17, 203–216 (2007). https://doi.org/10.1007/s11023-007-9062-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11023-007-9062-6

Keywords

Navigation