Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Would really like to see some scans of these...

I've looked at schematics of early computers, and although many of the implementation details are quite different, it's often amazing how similar they are to modern machine architectures. One of the biggest differences is that these early machines were more like programmable calculators than general-purpose computers, with really wide registers, support for floating-point, and math-oriented instruction sets.

http://en.wikipedia.org/wiki/Electronic_Delay_Storage_Automa...



I think that was a necessity. The machines were built to do math, and at the time they didn't have fancy modern compilers that could do pure magic transforming human-convenient expressions into amazingly efficient machine code. So they had to either design the machine to do the required operations in hardware or make programmers do similar magic in their heads.


You might be interested in reading The preparation of programs for an electronic digital computer (1951) By Maurice V. WIlkes, David J. Wheeler and Stanley Gill. That's the textbook they used for the first programming course (in Europe) using the EDSAC. The interesting thing to me about this book is that the topics discussed can still be found in some way in "modern" introduction texts to programming.

Part I

1. The design or programs for electronic computing machines

2. Input of orders

3. Subroutines and parameters

4. Library subroutines and their use in constructing programs

5. Pitfalls

6. Use of the EDSAC and its associated equipment

7. Examples

Part II

8. Specification of library subroutines

Part III: Appendices


I wonder if that was influenced by Feynman's pre-computer process of 'programming' ranks of operators on mechanical calculators to do series expansions for the Manhattan project? What he did there in space, was essentially what EDSAC did in time. Except he pipelined the process, which was a wrinkle that didn't happen in computers for decades?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: