Skip to main content
Log in

Computer Science and Philosophy: Did Plato Foresee Object-Oriented Programming?

  • Published:
Foundations of Science Aims and scope Submit manuscript

Abstract

This paper contains a discussion of striking similarities between influential philosophical concepts of the past and the approaches currently employed in selected areas of computer science. In particular, works of the Pythagoreans, Plato, Abelard, Ash’arites, Malebranche and Berkeley are presented and contrasted with such computer science ideas as digital computers, object-oriented programming, the modelling of an object’s actions and causality in virtual environments, and 3D graphics rendering. The intention of this paper is to provoke the computer science community to go off the beaten path in order to find inspiration for the development of new approaches in software engineering.

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.

Similar content being viewed by others

Notes

  1. Many of the references appearing in this and subsequent sections are to a widely used collection of source materials relating to pre-Socratic philosophers: Diels and Kranz Die Fragmente der Vorsokratiker, Weidmann, Berlin 1952. These references start with DK, followed by a number indicating the relevant philosopher, type of material (A for a quotation in another work, B for an original fragment) and the ordinal number of the fragment.

  2. It is not clear whether this is a correct report of the Pythagorean views, or an (mis)interpretation by Aristotle. This is irrelevant for the current discussion, as it still places the concept within Ancient Greek philosophy.

  3. The reference format of Aristotle’s works is based on the edition published in 1831 by Immanuel Bekker; it consists of the abbreviation of the author’s name, the abbreviation of the work’s title (Met. for Metaphysics), a reference to the book and chapter, and ‘Bekker numbers’, indicating the page, column and line.

  4. The reference format of Plato’s works is based on the edition published in 1578 by Henri Estienne (known by the Latinised version of the name: Henricus Stephanus); it consists of the author’s name, the work’s title, the book number (for Republic and Laws only) and ‘Stephanus reference’, indicating the page number and section.

  5. From 2003 onward.

  6. Languages such as Smalltalk or Python are notable exceptions to this rule.

  7. It should be noted that some authors emphasize differences between the early nominalism and the concepts of Abelard by giving the latter a different name; in such a case the views of Abelard are referred to as sermonism (Tatarkiewicz 2014; Marías 1967).

  8. References to Descartes’ works are based on the edition published 1897–1913 by Adam and Tannery (hence the initials AT), the Roman numeral indicating the volume and the Arabic numeral indicating the page.

  9. Another well-known formulation of the same problem—in fact a formulation that (mockingly) points out an important dilemma regarding immaterialism—is illustrated by the following limerick by Ronald Knox (Russell 1946): ‘There was a young man who said, God / Must think it exceedingly odd / If he finds that this tree / Continues to be / When there’s no one about in the Quad’.

  10. Again there exists a limerick by Ronald Knox (Russell 1946) summarizing this concept—as an answer to the preceding one: ‘Dear: Your astonishment’s odd / I am always about in the Quad / And that’s why the tree / Will continue to be, / Since observed by / Yours faithfully, God’.

  11. Stanisław Lem, a Polish philosophical and science-fiction writer, in one of his (lighter) stories (Lem 1971), claims that all famous European philosophers were in fact scientists and engineers that were exiled to various points in time from the twenty-seventh century—obviously this explains their knowledge of computer science concepts.

References

  • Armstrong, D. M. (1989). Universals. An opinionated introduction. Boulder, CO, USA: Westview Press.

    Google Scholar 

  • Chroust, A.-H. (1961). The origin of metaphysics. The Review of Metaphysics, 14(4), 601–616.

    Google Scholar 

  • Chroust, A.-H. (1967). Plato’s Academy: The first organized school of political science in antiquity. The Review of Politics, 29, 25–40.

    Article  Google Scholar 

  • Clatterbaugh, K. (1995). Cartesian causality, explanation, and divine concurrence. History of Philosophy Quarterly, 12(2), 195–207.

    Google Scholar 

  • Corbin, H. (2014). History of Islamic philosophy. London: Routledge.

    Google Scholar 

  • Friberg, J. (1981). Methods and traditions of Babylonian mathematics: Plimpton 322, Pythagorean triples and the Babylonian triangle parameter equations. Historia Mathematica, 8(3), 277–318.

    Article  Google Scholar 

  • Garber, D. (1992). Descartes’ metaphysical physics. Chicago: The University of Chicago Press.

    Google Scholar 

  • Holland, J. (1975). Adaptation in natural and artificial systems. Ann Arbor: University of Michigan Press.

    Google Scholar 

  • Huffman, C. A. (1993). Philolaus of Croton, Pythagorean and Presocratic. Cambridge: Cambridge University Press.

    Google Scholar 

  • King, P. (2004). The metaphysics of Peter Abelard. In J. E. Brower & K. Guilfoy (Eds.), The Cambridge companion to Abelard (pp. 65–125). Cambridge: Cambridge University Press.

    Chapter  Google Scholar 

  • Kirkpatrick, S., Gelatt, C. D., & Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 220, 671–680.

    Article  Google Scholar 

  • Lee, S. (2008). Necessary connections and continuous creation: Malebranche’s two arguments for occasionalism. Journal of the History of Philosophy, 46(4), 539–565.

    Article  Google Scholar 

  • Lem, S. (1971). Podróż dwudziesta. In: Dzienniki gwiazdowe, Warsaw: Czytelnik.

  • Liu, M.-W. (1985). The mind-only teaching of Ching-ying Hui-Yuan: An early interpretation of Yogaacaara thought in China. Philosophy East and West, 35(4), 351–375.

    Article  Google Scholar 

  • Marías, J. (1967). History of philosophy. New York: Dover Publications.

    Google Scholar 

  • McCulloch, W. S., & Pitts, W. P. (1943). A logical calculus of the ideas immanent in nervous activity. Bulletin of Mathematical Biophysics, 5, 115–133.

    Article  Google Scholar 

  • Moreland, J. P. (2001). Universals. Montreal: McGill-Queen’s University Press.

    Google Scholar 

  • Mueller, I. (1997). Greek arithmetic, geometry and harmonics: Thales to Plato. In C. C. W. Taylor (Ed.), Routledge history of philosophy, Vol. I: From the beginning to Plato (pp. 271–322). London: Routledge.

    Google Scholar 

  • Pannenberg, W. (1992). Systematic theology. London: T & T Clark.

    Google Scholar 

  • Pedersen, O. (1997). The first universities: Studium generale and the origins of university education in Europe. Cambridge: Cambridge University Press.

    Google Scholar 

  • Perler, D., & Rudolph, U. (2000). Occasionalismus. Theorien der Kausalität im arabisch-islamischen und im europäischen Denken. Göttingen: Vandenhoeck & Ruprecht.

    Google Scholar 

  • Russell, B. (1914). Our knowledge of the external world. Chicago: Open Court Publishing Company.

    Google Scholar 

  • Russell, B. (1946). History of western philosophy and its connection with political and social circumstances from the earliest times to the present day. London: George Allen & Unwin.

    Google Scholar 

  • Schmaltz, T. (2014). Nicolas Malebranche. In E.N. Zalta (Ed.), The Stanford encyclopedia of philosophy. Stanford, CA: The Metaphysics Research Lab, Center for the Study of Language and Information, Stanford University

  • Shapiro, S. (1983). Mathematics and reality. Philosophy of Science, 50(4), 523–548.

    Article  Google Scholar 

  • Stace, W. T. (1920). A critical history of Greek philosophy. London: Macmillan.

    Google Scholar 

  • Tatarkiewicz, W. (2014). Historia filozofii. Warsaw: Wydawnictwo Naukowe PWN.

    Google Scholar 

  • Taylor, A. E. (1909). Elements of metaphysics. New York: Macmillan.

    Google Scholar 

  • Turner, R. (2014). The philosophy of computer science. In: E.N. Zalta (Ed.), The Stanford Encyclopedia of Philosophy.

  • Whitehead, A. N. (1929). Process and reality. An essay in cosmology. Cambridge: Cambridge University Press.

    Google Scholar 

  • Wirth, N. (2006). Good ideas, through the looking glass. Computer, 39(1), 28–39.

    Article  Google Scholar 

Download references

Acknowledgements

The author would like to thank all the persons attending the lecture on March 10th, 2015, who expressed interest in the topics presented and encouraged the author to develop them into this article.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Wojciech Tylman.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Tylman, W. Computer Science and Philosophy: Did Plato Foresee Object-Oriented Programming?. Found Sci 23, 159–172 (2018). https://doi.org/10.1007/s10699-016-9506-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10699-016-9506-7

Keywords

Navigation