Thursday, June 28, 2018

Implementation and ontological pluralism

Yesterday I put up a short post containing a conversation between Daniel Kaufman and Massimo Pigliucci about ontology. Toward the end Pigliucci suggested that we needed to recognize multiple ontologies: 1) physical objects, 2) biological beings and processes, 3) the (human) social world and 4) mathematics. A bit later I commented on that post over at Here's an edited and expanded version of that comment.

* * * * *

Yet...come to think of it, you know, in the world of computing they talk of IMPLEMENTATION, where some system X is said to be implemented in Y. X might be a 'high-level' programming that is implemented in the machine/assembly language for a specific processor, or it might be, say, a word processor that is implemented in, say, C++ (where C++ is a high level programming language). In the word processor example, while there is a sense in which you could say that the word processor is reducible to C++, the fact is if all you've got available to you are the constructs of C++ you're never going to understand how the word processor works. You can construct the FUNCTIONS of a word processor out of C++ in the way that you can construct a house out of wood and nails, but you really can't define and organize the functions of a word processor in terms of C++. You've got to do the definitions in terms that are appropriate to word processors, not high-level programming languages.

In the case of houses, you're going to want to have a living room, bedrooms, a kitchen, bathroom, and so forth. You define and design those rooms in terms of their (human) functions. Once the functions have been specified and the rooms designed, you can then figure out how to implement them using the building materials at hand, wood, nails, glue, pipes, glass, etc. But you can't define those room functions directly in terms of wood and nails, etc. And so it goes with a word processor. Sentences and paragraphs are defined in terms having to do with language and documents, not the data types and commands of a programming language. Given an understanding of what sentences and paragraphs are, you can then proceed to implement them in programming constructs.

It's in that sense, I'm suggesting, that we can say that the world of biology is implemented in physical objects and processes, and that the human social world is implemented in the worlds of biology and physical objects. [It's not clear to me that mathematics can be accommodated in this way.]

No comments:

Post a Comment