Affiliations: Department of Computer Science, University of Essex, UK and Center For Inquiry, Amherst, NY, USA | Department of Computer Science, University of Essex, UK
Note:  Corresponding author: Amnon H. Eden, Department of Computer Science, University of Essex Colchester, Essex CO4 3SQ, UK. Tel.: +44 1206 872677; Fax: +44 1206 872788; E-mail: eden-atnospam-essex.ac.uk.
Abstract: As a first step in the larger project of charting the ontology of computer programs, we pose three central questions: (1) Can programs, hardware, and metaprograms be organized into a meaningful taxonomy? (2) To what ontology are computer programs committed? (3) What explains the proliferation of programming languages and how do they come about? Taking the complementary perspectives software engineering and mathematical logic, we take inventory of programs and related objects and conclude that the notions of abstraction and concretization take a central role in this investigation.
Keywords: Philosophy of computer science, software ontology, science of software design