Keith Douglas' Web Page

About me Find out who I am and what I do.
My resumé A copy of my resumé and other documentation about my education and work experience for employers and the curious.
Reviews, theses, articles, presentations A collection of papers from my work, categorized and annotated.
Current research projects What I am currently working on, including some non-research material.
Interesting people People professionally "connected" to me in some way.
Interesting organizations Organizations I am "connected" to. (Some rather loosely.)
Intellectual/professional influences Influences on my work, including an organization chart. Here you can also buy many good books on philosophy and other subjects via amazon.com. I have included brief reviews of hundreds of books.
Professional resources Research sources, amazon.com associates programs, etc.
What is the philosophy of computing? A brief introduction to my primary professional interest.
My intellectual heroes A partial list of important people. Limited to the dead.
My educational philosophy As a sometime teacher I've developed one. Includes book resources.

Book Influences - Computing: Foundations of Programming Languages

Essentials of Programming Languages Friedman See my philosophy of computing page.
Foundations of Object-Oriented Languages Bruce A semi-sequel to Essentials of Programming Languages above. In this tome, however, the focus is on semantics for the resulting languages. In this case, programming language semantics involves using a well established branch of mathematics with nice characteristics (mostly soundness) which then can be used to characterize the programming language it describes. Although it is nice to be able to reason about programming languages in an exact fashion, I am somehow skeptical about the merits of introducing another layer which makes for more potential errors. In my view the much more interesting semantics for programming languages is closer to an ontology (not in the sense that has been coopted, however, in computing) - namely what does it actually do in the world? One cannot prove anything here, though, simply give rigourous arguments. (See Fetzer's article in The Digital Phoenix.) I suspect this is why the latter is not as popular.