The burden of history in the design of functional entities

From Wikiversity
Jump to navigation Jump to search

This original article by Dan Polansky will have a look at the burden of history in the design of functional entities. The key thesis is that the developmental history of functional entities often creates a constraint on further functional development and improvement of these entities. The thesis may look trivial, but we will have a look at it anyway.

What kind of functional entities can we have in mind?

  • Computer hardware, especially processors
  • Computer software
  • Human natural languages
  • Biological organisms

The range of entities above explains the choice of the concept of functional entities rather than functional artifacts; strictly speaking, biological organisms are no artifacts, no man-made things. And it is questionable whether a language properly belongs under the concept of artifact either.

A key limitation of this article is that it looks across domains. One may start thinking that because there is burden of history both in computer software and biological quasi-design of organisms, the two phenomena must have something important in common. However, it may turn out that the two cases have primarily that in common which we inserted in the selection criteria, and that there is not meaningful transfer from one domain to the other.

Computer hardware

[edit | edit source]

The burden of history is well reflected in the history of Intel processors. Intel aimed at compatibility. By doing so, it was forced to adopt processor designs that, from the perspectives of simplicity and elegance, were suboptimal, including the concept of segment and offset. By contrast, Motorola 68k processors broke away from the compatibility with 6800 processors, allowing flat addressing space arguably much more elegant than segment plus offset.

Computer software

[edit | edit source]

Like computer hardware, computer software is often developed under the constraint of compatibility to support the network of dependencies. Furthermore, it is generally much easier to develop and expand software by incremental changes of an existing system than starting from scratch.

An example of burden of history is Microsoft's switch from 8.3 file names to long file names. That was done via something like a workaround. The result was that pattern selections in commands like "dir" picked both long file names and the hidden 8.3 file names, clearly suboptimal design, if not outright wrong.

In programming languages, we can see the burden of history e.g. in the evolution of C++, whose key desideratum was to be largely compatible with C, a double-edged sword. Once a feature is added to the language, compatibility dictates it should not easily be removed or have its syntax fundamentally changed. The burden is further exemplified in the not entirely evolutionary transition from Python 2 to Python 3; the syntactic changes did not completely change the syntactic face of the language, but were disruptive enough to warrant over a decade of transitioning.

Many more examples can be given; this is the first quick sketch to give a minimum impression.

Further reading:

Human natural languages

[edit | edit source]

Human natural languages carry their history with them. It is not easily conceivable that arbitrary improvements can be made by design. Thus, it is e.g. hard to imagine that a central authority would stipulate that the language should abandon double negation (as if "there isn't nothing in the box" in English). In English, there has been no successful attempt at massive simplification of the spelling. On the other hand, some languages such as Turkish have successfully switched from one script to another. German switched from fraktur script to antiqua. Multiple languages underwent significant top-down spelling reforms within the same script, including German, Czech and Russian.

Further reading:

Biological organisms

[edit | edit source]

The case of biological organisms is perhaps most interesting and unobvious. Do designs or, strictly speaking, "designoids" (Dawkins) or quasi-designs, carry the burden of evolutionary history, constraining optimal organism design? Is the case of human appendix such a case? Are there other such cases in humans? Is human amygdala a trace of evolutionary history that is suboptimal from modern point of view, as popular literature would suggest?

None of these questions are easy to answer. Collecting good literature on the subject would be ideal. At this stage of the development of this article, this remains more of a collection of questions than answers.

A related subject is the one of Stephen J. Gould's Bauplan and the discussion between "adaptionists" on one hand and Gould and Lewontin's notion of other forces than adaptation in the evolutionary history on the other hand. This again requires further expansion.

Further reading: