letters to the editor
DOI: 10.1145/1435417.1435420
true seeds of open source software
Though I apprecIated Martin
Campbell-Kelly’s “Vie wpoint”
“Will the Future of Software
Be Open Source?” (Oct. 2008),
we must still rectify a small
piece of history to apportion credit cor-
rectly. Campbell-Kelly asserted that fol-
lowing the release in 1964 of the IBM
System/360 as a “standard computer
platform” the software world experi-
enced a radical transformation. How-
ever, the S/360 followed by a year the
Burroughs B5000, a far more capable
system; its successor, the B5500, came
out only six months after the S/360.
The B5000 took an integrated ap-
proach to hardware and software; its
architecture deliberately supported
development of software exclusively in
high-level languages, mainly ALGOL-
based. This was at a time when the rest
of the world thought a language like AL-
GOL could not be implemented. (Don-
ald Knuth implemented a Burroughs
ALGOL compiler on the B205 during
a three-month summer vacation.) The
rest of the world did not, alas, figure out
ALGOL for a long time, and eventually
adopted a far-less-capable language—
C—as a systems programming lan-
guage. In his technical report “Hints on
Programming Language Design” C. A.R.
Hoare said, “Here is a language so far
ahead of its time that it was not only an
improvement on its predecessors but
also on nearly all its successors.” The
same can be said of the B5000.
All B5000 system software was dis-
tributed in source form, and users
could read and modify it and submit
patches back to Burroughs. Because it
was all written in ALGOL-like high-lev-
el languages, source distribution was
even more meaningful than if it was
in cryptic assembler, as in the S/360.
Hence, the B5000 contained the seeds
of open source software.
Edsger Dijkstra’s reaction is also
telling; he said the week he studied
the specifications of the S/360 was the
“darkest week in my professional life.”
He later became a research fellow at
Burroughs. The B5000 also had a tagged
polymorphic (object-oriented) archi-
tecture designed by Robert Barton, who
went on to influence Alan Kay and oth-
ers in his object-oriented thinking.
The Burroughs B5000 not only pre-
dated the S/360 but reflected a far more
radical transformation in software de-
velopment. The S/360 was a huge back-
ward step compared to other develop-
ments, especially the B5000, which
lives on today in Unisys MCP systems.
ian Joyner, Sydney, Australia
campbell-Kelly responds:
Burroughs was indeed a highly innovative
computer manufacturer and never achieved
the sales it deserved. At the time of the
S/360 launch in 1964, IBM already had over
80% of the mainframe market, compared
with Burroughs’ modest 4%. Despite the
B5000’s superb architecture and software
system, the S/360 became the standard
platform adopted by the great majority of
computer centers worldwide.
martin campbell-Kelly, Coventry, u.K.
cs as Related to Philosophy
as it is to nature
When I decided in 1984 to make teaching computer science my career, I was
strongly motivated by the interconnections among CS, nature, and philosophy that have subsequently guided my
approach to teaching. The “Review
Article” “The Many Facets of Natural
Computing” by Lila Karl and Grzegorz
Rozenberg (Oct. 2008) described theoretical and experimental research that
put flesh on our deepest intuition about
the interdisciplinary nature of CS and
thus laid a solid foundation for a computational view of nature in the CS curriculum. In this light, please consider
the following anecdotal comments:
Nature as inspiration. As a young
programmer in the early 1960s, I began
pondering the relationship between
parallel processing and the multitasking capabilities of early operating systems with our own human executor; we
multitask at will, even as parallel processes run within us;
Information processing in nature. It
seemed intuitive that information processing (such as genes and evolution)
would take place in living things, but
how about in nonliving things? For example, when two molecules combine to
form a new molecule, do they exchange
information? What even is information? The word’s etymology suggests it
is related to structure. So do two molecules have to be structurally “
compatible” before they are able to combine?;
Pleasant surprise. I was a graduate
student at the University of Colorado at
the time professor Andrei Ehrenfeucht
was collaborating with the author
Rozenberg. Their theoretical research
concerned how to model plant growth
through formal grammars; I was in awe
of their effort to try to unlock a deep
mystery—a language of nature;
CS and philosophy. I invite computer
scientists to consider how closely CS
is related to philosophy, as well as to
natural science. Philosophy contrib-
utes to CS, despite sometimes conten-
tious disputation. Two examples are
Frege’s invention of first-order logic (he
was, by his own account, equal parts
philosopher and mathematician) and
Austin’s and Grice’s contributions to
natural language processing research.
CS may likewise prove useful for phi-
losophy. The concept of undecidability
(and the use of “proof by contradiction”
as a proof tool in undecidability argu-
ments) may be useful in resolving long-
standing philosophical problems; and
Philosophical intuition. The structure
theorem of programming says that any
(proper) program might be described
using (only) control structures for se-
quence, selection, and iteration. My
intuition tells me that when a program
refers to the real world, sequence refers
to time, selection to (finite) choice, and
iteration to inertia.
As one who loves CS and its deep
connections to nature and philosophy,
I say to the authors Karl and Rozenberg,
Thank You and Hooray!
nicholas ourusoff, new London, nH
Communications welcomes your opinion. to submit a
letter to the editor, please limit your comments to 500
words or less and send to letters@cacm.acm.org.