Live data from Hacker News

What did Ada Lovelace's program actually do? (2018)

twobithistory.org

21–30 of 138 posts

Re: What did Ada Lovelace's program actually do? (2018)

#21

A really cool article. From the Intro: > She thought carefully about how operations could be organized into groups that could be repeated, thereby inventing the loop. She realized how important it was to track the state of variables as they changed, introducing a notation to illustrate those changes. As a programmer myself, I’m startled to see how much of what Lovelace was doing resembles the experience of writing so…

However much credit Ada deserves for her programming techniques, to me the thing that always stood out is her ability to see the big picture wrt computation:

> Again, it [Analytical Engine] might act upon other things besides number, were objects found whose mutual fundamental relations could be expressed by those of the abstract science of operations, and which should be also susceptible of adaptations to the action of the operating notation and mechanism of the engine. Supposing, for instance, that the fundamental relations of pitched sounds in the science of harmony and of musical composition were susceptible of such expression and adaptations, the engine might compose elaborate and scientific pieces of music of any degree of complexity or extent.

Imagine coming up with this idea in 1842, a whole century before the first actual programmable computers would be built, based solely on a description of a prototype of a mechanical computer. This is hacking extraordinaire.

Re: What did Ada Lovelace's program actually do? (2018)

#22
post #19

Discussed at the time (of the article): What Did Ada Lovelace’s Program Actually Do? - https://news.ycombinator.com/item?id=17797003 - Aug 2018 (52 comments)

> Discussed at the time (of the article)

Thank you for that careful clarification. The discussion in "Bell's Life in London and Sporting Chronicle" was far less enlightening.

Re: What did Ada Lovelace's program actually do? (2018)

#23
post #19

Discussed at the time (of the article): What Did Ada Lovelace’s Program Actually Do? - https://news.ycombinator.com/item?id=17797003 - Aug 2018 (52 comments)

Also relevant is "Untangling the Tale of Ada Lovelace" from December, 2015 at https://writings.stephenwolfram.com/2015/12/untangling-the-t... with 35 comments from the time at https://news.ycombinator.com/item?id=10709730 .

Re: What did Ada Lovelace's program actually do? (2018)

#24

> The Difference Engine was not a computer, because all it did was add and subtract. The definition of computer is pretty grey for the pre-digital era, and it wasn't turing complete, but is it actually controversial whether it was a computer?

Probably not, it's stated in the TFA, the controversy is because Lovelace was a woman and some people think propping her up is basically a DEI retcon in history, the rest of us don't care. But I don't think it's anything whatsoever to do with actual computers

https://en.wikipedia.org/wiki/Ada_Lovelace#Controversy_over_...

> All but one of the programs cited in her notes had been prepared by Babbage from three to seven years earlier. The exception was prepared by Babbage for her, although she did detect a "bug" in it. Not only is there no evidence that Ada ever prepared a program for the Analytical Engine, but her correspondence with Babbage shows that she did not have the knowledge to do so.

> Bruce Collier wrote that Lovelace "made a considerable contribution to publicizing the Analytical Engine, but there is no evidence that she advanced the design or theory of it in any way"

The common claims are that Ada Lovelace was the first person to write a computer program, or that she was actually the primary driver in developing the analytical engine. Both such claims fall into the area "DEI retcon" as you choose to phrase it.

Although on a more pedantic note, Babbage wasn't the first person to program a computer either. Computers that aren't Turing complete are still computers. The Jacquard loom is one such example, and unlike the analytical engine it was actually built and put to practical use.

Re: What did Ada Lovelace's program actually do? (2018)

#25
post #8
post #4

Earlier quoted context omitted.

Difference Engine basically implemented one algorithm in hardware, while Analytical Engine was supposed to run a program. I believe that could make the latter one a computer.

The first stored program computer is a remarkable achievement, even if they didn't actually build it.

The analytical engine wasn't a stored program computer. It most closely follows the Harvard architecture, with instructions read from punch card memory. The analytical engine's claim to fame is that it was the first Turing complete computer to be designed.

Re: What did Ada Lovelace's program actually do? (2018)

#27

> In fact, aside from the profusion of variables with unhelpful names, the C translation of Lovelace’s program doesn’t look that alien at all. Clearly the author never met my coworkers.

...or worked with any mathematicians/physicists/engineers who program. As soon as I saw that, I thought "typical quant". Like my dad (A chemical engineer) learned to program in FORTRAN, which used to insist variable names were 1 letter and up to 2 digits. He later learned Basic, but his code was still spiritually FORTRAN so the one-letter-two digits thing stuck. I thought that was just him but then much later I went…

That naming convention makes perfect sense to the mathematician, so why not? It's why we use `for(int i = i; i < n; i++)` in for loops; its the mathematical sigma sum of values with the same naming convention

Re: What did Ada Lovelace's program actually do? (2018)

#28

> In fact, aside from the profusion of variables with unhelpful names, the C translation of Lovelace’s program doesn’t look that alien at all. Clearly the author never met my coworkers.

...or worked with any mathematicians/physicists/engineers who program. As soon as I saw that, I thought "typical quant". Like my dad (A chemical engineer) learned to program in FORTRAN, which used to insist variable names were 1 letter and up to 2 digits. He later learned Basic, but his code was still spiritually FORTRAN so the one-letter-two digits thing stuck. I thought that was just him but then much later I went…

I helped port a physicist's assembly code long ago; variables were named alphabetically in the order encountered in the code, e.g. A, B, ...A1, ..., AA1, etc. up to ZZ23.

Still amazed that the nearly-incomprehensible code (and the port) worked

Re: What did Ada Lovelace's program actually do? (2018)

#29
post #8

Earlier quoted context omitted.

The first stored program computer is a remarkable achievement, even if they didn't actually build it.

The analytical engine wasn't a stored program computer. It most closely follows the Harvard architecture, with instructions read from punch card memory. The analytical engine's claim to fame is that it was the first Turing complete computer to be designed.

> with instructions read from punch card memory

If that isn't a stored program, I don't know what is.

Re: What did Ada Lovelace's program actually do? (2018)

#30

Earlier quoted context omitted.

...or worked with any mathematicians/physicists/engineers who program. As soon as I saw that, I thought "typical quant". Like my dad (A chemical engineer) learned to program in FORTRAN, which used to insist variable names were 1 letter and up to 2 digits. He later learned Basic, but his code was still spiritually FORTRAN so the one-letter-two digits thing stuck. I thought that was just him but then much later I went…

That naming convention makes perfect sense to the mathematician, so why not? It's why we use `for(int i = i; i < n; i++)` in for loops; its the mathematical sigma sum of values with the same naming convention

Oh yeah. And if you're like my dad you call them "do loops" not "for loops"
Post reply on HN