Back to Kant

Ken Kahn kenkahn at toontalk.com
Thu Oct 11 18:37:21 UTC 2001


Philosophy intersects programming languages at least in two places:

1. A language designer is designing a world with an ontology and
episptomology. I think this is what Alan mean by Smalltalk being too
Platonic. Think about the different world views inherent in a class based
OOPL than in a prototype based one.

2. As Justin Walsh pointed out in his message, philosophers have something
to say about the process of designing languages or software in general. E.g.

> Kant stresses the urgency of getting the System right before you start. =
> Don't enter a tunnel unless you can see the light: know exactly how you =
> can get out. Does that sound a little like the early Stack Computing =
> Technology, (forerunners of RISC and CISC) which made contextual muddles =
> practically impossible?

My reaction to this is that there probably are some very good insights in
Kant and others but there is also a danger. The danger is in excluding other
ways of thinking. The best paper I know of on this topic is "Epistemological
Pluralism and the Revaluation of the Concrete" by Sherry Turkle and Seymour
Papert ( http://www.papert.com/articles/EpistemologicalPluralism.html ).
They categorize hard (Kantian?) and soft approaches to building software and
to doing science. Here's short sample:

"Observation of the soft approach to programming calls into question deeply
entrenched assumptions about the classification and value of different ways
of knowing. It provides examples of the validity and power of concrete
thinking in situations that are traditionally assumed to demand the
abstract. It supports a perspective that encourages looking for
psychological and intellectual development within, rather than beyond, the
concrete and suggests the need for closer investigation of the diversity of
ways in which the mind can use objects rather than the rules of logic to
think with. "

Epistemological pluralism is an argument that software, teaching materials,
courses, etc. should support and value multiple ways of thinking.

Best,

-ken kahn ( www.toontalk.com )





More information about the Squeak-dev mailing list