[vcf-midatlantic] slight diversion, was "Looking for some knowledgeable with the Harvard Mark I"

Jeffrey Jonas jeffrey.scott.jonas at gmail.com
Sun Oct 11 05:08:28 EDT 2020

Jim Scheef:
> My memory sort of distills down to the factoid
> that the Mark I had almost no ability to branch in a "program"

That's why the "Turing machine" is so important:
it describes the bare minimum required for true automatic operation.

I had that sort of epiphany in Jr High School when learning programming
the Compucorp 025 Educator programmable calculator.
[The Olivetti Programma 101 was in the corner, already obsolete
but I poked at it and admired its features such as magnetic card reader/writer]

Most programs were just automating a specific formula.
But the real power of the computer was the BRANCH statement.
Then it could make DECISIONS, not just spew numbers.
[That's why many folks pigeon-holed computers as super-duper calculators,
calling them "number crunchers".
It was a step up from rooms of people doing repetitive calculations
such as book-keeping or trig-tables.
That was the mindset for the IBM ASCC / Harvard Mark I
until Grace Hopper, Alan Turing and other saw beyond such self-imposed

Back to the Compucorp:
not all functions had keys. The stylus-punched cards
allowed access to many more instructions and features.
The keys allowed "special functions"
such as ONE test and branch to a fixed location.
But programming with cards allowed for many test-and-jumps
allowing for much more complex programs!
And THEN you can write "real" programs :-)

Before you say "I'm glad we no longer have such limitations",
please be aware that deep down, many systems have similar limitations.
Many microcontrollers and the early PDP processors
had only ONE interrupt to a fixed location (vs. vectored interrupts).
Bear-skins and stone-knives indeed :-)

My point being that in addition to what you learn about the machine,
the context is part of the story too.

More information about the vcf-midatlantic mailing list