[HN Gopher] Von Neumann's First Computer Program (1970)
       ___________________________________________________________________
        
       Von Neumann's First Computer Program (1970)
        
       Author : Cieplak
       Score  : 107 points
       Date   : 2024-05-22 05:31 UTC (1 days ago)
        
 (HTM) web link (dl.acm.org)
 (TXT) w3m dump (dl.acm.org)
        
       | brudgers wrote:
       | direct to pdf, https://dl.acm.org/doi/pdf/10.1145/356580.356581
        
       | varjag wrote:
       | tl;dr a variation of merge sort. Which is still one of the best
       | sorting algorithms ever devised.
       | 
       | Pretty impressive for the first stored computer program ever.
        
         | larodi wrote:
         | Impressive also Knuth decided to represent the math as assembly
         | for CLARITY. Sounds like a major blow to math notation when it
         | comes to algorithms...
        
           | 082349872349872 wrote:
           | Given that von Neumann had his name lent to "von Neumann
           | regular" elements and rings (exercise: what, if any, is the
           | relation to "regular expression"?), I suspect he could've
           | come up with an algorithm notation that was both (a)
           | exceedingly well suited to expressing FSM implementations,
           | yet (b) inscrutable to all of us who grew up with assembly as
           | a lingua franca.
        
           | vajrabum wrote:
           | His books are filled with assembly code. He created a machine
           | and an assembly language to be vendor independent for his
           | famous book series The Art Of Computer Programming. I first
           | saw this in 1978 when I took data structures and I remember
           | thinking that was a bit idiosyncratic even then.
           | 
           | Among all the things Professor Knuth is famous for is writing
           | an Algol compiler for the Burroughs 205 in assembly on paper
           | over one summer just after he graduated from college. There's
           | a handwritten listing of it at the computer history museum.
           | It's pretty interesting and shows off how he programmed and
           | thought about programming in 1960-1961. It's probably not
           | terribly different from how other people programmed back then
           | but he was better at it than most.
           | 
           | https://www.computerhistory.org/collections/catalog/10272457.
           | ..
        
             | pmcjones wrote:
             | And here is Paul Kimpel's story about how he got that
             | compiler running (or at least limping) on his B205
             | emulator: https://datatron.blogspot.com/2015/11/knuths-
             | algol-58-compil...
        
         | 082349872349872 wrote:
         | Stored program computing didn't spring out of Zeus' forehead;
         | radix and merge sorting were already a computing thing in the
         | epoch of punched cards.
        
           | varjag wrote:
           | Merging on a collator is different from merge sort. And yes,
           | the concept of sorting was known before von Neumann. Still,
           | not sure about you but my first computer program was quite a
           | bit more basic, so allow me to remain impressed.
        
             | Sharlin wrote:
             | Well, out of all people it was _von Neumann_ , who at six
             | years old could divide eight-digit numbers in his head, and
             | who even his fellow "Martians" [1] speculated might not be
             | merely human.
             | 
             | "I have sometimes wondered whether a brain like von
             | Neumann's does not indicate a species superior to that of
             | man." - Hans Bethe
             | 
             | "von Neumann would carry on a conversation with my 3-year-
             | old son, and the two of them would talk as equals, and I
             | sometimes wondered if he used the same principle when he
             | talked to the rest of us." - Edward Teller
             | 
             | "There was a seminar for advanced students in Zurich that I
             | was teaching and von Neumann was in the class. I came to a
             | certain theorem, and I said it is not proved and it may be
             | difficult. von Neumann didn't say anything but after five
             | minutes he raised his hand. When I called on him he went to
             | the blackboard and proceeded to write down the proof. After
             | that I was afraid of von Neumann" - George Polya
             | 
             | [1] https://en.wikipedia.org/wiki/The_Martians_(scientists)
        
       | mehulashah wrote:
       | Sorting has always been a bellwether for computing systems.
       | Interestingly, Jim Gray recognized that 45 years later. He
       | therefore initiated and evangelized the out of core Sort
       | Benchmarks (sortbenchmark.org).
        
       | odyssey7 wrote:
       | The title states that this is von Neumann's "first computer
       | program," but the writing includes plenty of indicators to the
       | contrary and introduces the qualifiers "stored" and "extant."
       | 
       | Maybe Knuth will issue a reward check to someone who emails him
       | to fix the title?
        
         | svat wrote:
         | No he won't. The point of the reward has always been to solicit
         | improvements to the text, point out things he missed -- it does
         | not include conscious/stylistic choices. Please don't waste his
         | time, as (from personal experience) he really does read and
         | respond to error reports :-)
         | 
         | "Punctuation is extremely important to me, but I insist on
         | doing it my own way." -- Knuth
         | 
         | [Edit: BTW, where in the paper are you seeing "plenty of
         | indications to the contrary"? As far as I can tell there is
         | only one earlier program by von Neumann mentioned, an earlier
         | and 80x slower version of this same sorting program, which has
         | not survived.]
        
         | llm_trw wrote:
         | Folklore is that Knuth hasn't used email since the 90s. You
         | need to send dead trees to his secretary and hope she forwards
         | it to him.
        
       | jmbwell wrote:
       | Still throws me that "order" here means something like
       | "instruction" as in "that's an order, lieutenant!" and "code"
       | means something like "set," as in "legal code" or "code of
       | conduct."
       | 
       | "Program" however is already used here by Knuth in more of the
       | contemporary sense, though I gather in the time of ENIAC and
       | EDVAC, a "program" was more narrowly the sequence of operations
       | that implemented an order/instruction.
       | 
       | What I love most about all this, though, is how much of the
       | machine you can see in the algorithm and the programming. You can
       | almost visualize the vacuum tubes turning on and off in response
       | to these instructions, which themselves would have been
       | electrical pulses arranged into patterns according to the
       | positions of a bunch of Bakelite switches. Just amazing.
        
         | bitshiftfaced wrote:
         | Back in the 90s, I read "Bobby Fischer Teaches Chess," which he
         | didn't write. It was published in the 60s. I can recall finding
         | it strange how the author goes through the effort to explain
         | what a program was within the context of his book, as though it
         | didn't normally mean what I already understood it to mean.
        
       | pixelpoet wrote:
       | Extremely surprising reading about his mental arithmetic errors
       | (!) and misunderstandings, forgetting about variables, etc.
        
       | jay-barronville wrote:
       | "[John von Neumann] probably never intended to have this program
       | published and subjected to such scrutiny; although his manuscript
       | is carefully documented, he probably wanted only to circulate it
       | among a few interested colleagues. So when we find a few errors
       | and a few instances of clumsy coding, we should realize that it
       | was an early effort that was not supposed to represent a polished
       | product."
        
       | sramsay wrote:
       | I believe some researchers have come to the conclusion that "the
       | earliest extant program for a stored program digital computer"
       | was not written by John von Neumann, but by his wife: Klara Dan
       | von Neumann.
       | 
       | Knuth references a letter "in the possession of Dr. Herman H.
       | Goldstein," but scholars making the case for Klara are usually
       | referencing the archival materials at the LoC:
       | 
       | http://rs5.loc.gov/service/mss/eadxmlmss/eadpdfmss/1996/ms99...
       | 
       | I'm doing some research that involves this issue, and I'd be
       | grateful to anyone who has any insight on this. There's a book
       | called _Klara and the Bomb_ , which is quite fascinating (and
       | makes the claim for Klara), but that book leans more toward art
       | than research scholarship.
       | 
       | I am aware that "firsts" are often hard to identify when it comes
       | to the history of science and technology; I'm personally more
       | interested in what these very early programs were being used for
       | than who wrote them, per se. But I'd still like to know if Knuth
       | is actually correct in his assumption.
        
       | dang wrote:
       | Related:
       | 
       |  _Von Neumann 's First Computer Program (1970)_ -
       | https://news.ycombinator.com/item?id=34314690 - Jan 2023 (9
       | comments)
       | 
       |  _Von Neumann's First Computer Program (1970)_ -
       | https://news.ycombinator.com/item?id=16975366 - May 2018 (18
       | comments)
        
       ___________________________________________________________________
       (page generated 2024-05-23 23:01 UTC)