Hacker News new | ask | show | jobs
by ahartmetz 2916 days ago
How the program is stored seems pretty irrelevant, really... Sure there's a category "stored-program computer", but why was it created?

IMO Zuse's machines were the big deal, but they were buried under a number of other firsts that weren't that revolutionary, after the war when the Allies were writing history alone for a few years.

3 comments

I agree that Zuse deserves to be much better known, though I think he is actually better known than this machine, and the people who created it.

While I agree that, conceptually, there is little difference between a program on tape and one in working memory, the latter has a huge speed advantage. More intriguingly, I believe it was thought at the time that the ability of a program to modify itself would be very useful. Turing had already shown that it did not expand what is computable (though I do not know if that was widely appreciated), but even so, when you have very little, and slow, working memory, if it allowed you to reduce the size or speed of your program, that might be a big deal. Even the early COBOL allowed for limited self-modification, in the form of a goto that could be modified during execution to go to different addresses. The problem with self-modifying code turned out to be that it is very hard to reason about and debug.

As the Z3 cannot perform conditional branches I assume it was difficult or impossible for the hardware at the time to do anything other than move the tape in a linear sequence in a single clock cycle. A stored-program computer that uses a program counter to point to the current instruction (the position on the "tape") seems to be a significant step forward.
Right. If I recall correctly a proof it was potentially Turing complete is relatively recent and obscure, so it's difficult to consider it a general purpose computer like the SSEM. Credit to Zuse, like the pre-war Polish cryptographers, anyhow.
This seems to me like a far more salient distinction than how the program is stored.

Instruction pointer and explicit branching.

The Z3 is still (in a theoretical sense) Turing-complete, even without branching instructions (exponential path construction).

Extract from http://www.inf.fu-berlin.de/inst/ag-ki/rojas_home/documents/...

"We can therefore say that, from an abstract theoretical perspective, the computing model of the Z3 is equivalent to the computing model of today's computers. From a practical perspective, and in the way the Z3 was really programmed, it was not equivalent to modern computers."

> after the war when the Allies were writing history alone for a few years.

British machinery like Colossus was still kept a closely guarded secret until the mid 1970s.

The machinery was secret, but the lessons learned quietly trickled out. Newman, Flowers and Turing couldn't talk about what they did at Bletchley, but they made substantial contributions to the development of computers in the post-war years.
And thus also the contribution of people like Kilburn, featured rather sadly in a BBC documentary and particularly relevant here, with many in a similar boat.
And still being used until quite late on :-) we sold a lot of countries surplus enigma machines