slight diversion, was "Looking for some knowledgeable with the Harvard Mark I"
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 limitations.] 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.
On Sunday, October 11, 2020, 5:08:35 AM EDT, Jeffrey Jonas via vcf-midatlantic <vcf-midatlantic@lists.vcfed.org> wrote:
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.
To be honest, the lack of conditional operation in the Mark I always confused me a little. It always seemed to me that Aiken saw himself as Babbage's intellectual heir. And at least as I read Babbage, he did recognize/foresee the value in conditional operations. So I've never been clear on whether Aiken didn't see that in Babbage's writing or he didn't known how to implement conditionals or even consciously omitted them for expedience in the first machine. It may seem a little odd to suggest that conditional operation could be implemented on a machine sequenced by paper tape. However, it actually would not have been particularly difficult to implement a conditional skip. Coupled with the multiple tape readers and the ability to switch from one to another, I think it could have been quite interesting. It would be an interesting what-if experiment someday. BLS
participants (2)
-
Brian L. Stuart -
Jeffrey Jonas