Live data from Hacker News

What Did Ada Lovelace’s Program Actually Do?

twobithistory.org

21–30 of 58 posts

Re: What Did Ada Lovelace’s Program Actually Do?

#21

> she made groups of operations and in the text of her note specified when they should repeat. Does anyone know what "should repeat" means? Was the machine capable of repeating or does this mean the human operator needed to do the repeating?

Babbage's notes describe what we would call branch-if-zero and branch-if-negative instructions which you could use to implement repetition. Control flow was the least well developed part of the instruction set though, presumably because it would be trivial to implement compared to the arithmetic operations so it could wait.

If you're interested in that kind of thing I wrote a description of the entire instruction set a while back: http://h14s.p5r.org/2012/11/punched-cards.html.

Re: What Did Ada Lovelace’s Program Actually Do?

#22

Earlier quoted context omitted.

For me, that's no big deal: 10 PRINT "HELLO WORLD" Even the horrible crap I wrote as an novice is probably less embarrassing to me that the stuff I wrote as a journeyman who shoulda known better. Thankfully, the most embarrassing things are, like, spending 2 days configuring postfix and not realizing that I could just read the log files and it tells me specifically what isn't working. A valuable lesson, but embarrass…

Hahaha, mine: mov ah, 2 mov dl, 7 int 21 int 20 Discovering that I could write my own programs with debug.com was earth shaking. Picked up some decade old book on it at Half Price Books (which went well with my decade old machine -- an 80s model IBM with integrated monochrome green screen) and never looked back.

beep!

Re: What Did Ada Lovelace’s Program Actually Do?

#23

This is really a very gripping piece, and I'm not actually a programmer. It's also interesting mathematically and just as general history, for lack of a better term.

I’m a programmer and respected Ada Lovelace simply because of her having the title of the first programmer. Now I think she deserves more recognition because she also envisioned the modern use of computers in everyday tasks. Amazing.

Re: What Did Ada Lovelace’s Program Actually Do?

#24
The "C translation" of the program by the article author:

https://gist.github.com/sinclairtarget/ad18ac65d277e453da5f4...

It's definitely far from being trivial!

Also note the use of floats in the C version. A lot of simpler CPUs didn't and still don't have floats.

Fascinatingly, the Analytical Engine's number representation was 40 digits (and later: 50)(!) base 10 (but not "floating" but "fixed" point):

https://www.fourmilab.ch/babbage/authentic.html

Moreover, a lot of simpler CPUs also don't have the "division" in the "instruction set", the Engine has it!

Given the emulator already existing, maybe somebody will now create the cards from Lovelace's program, and run it as intended?

https://www.fourmilab.ch/babbage/emulator.html

Re: What Did Ada Lovelace’s Program Actually Do?

#25

Earlier quoted context omitted.

For me, that's no big deal: 10 PRINT "HELLO WORLD" Even the horrible crap I wrote as an novice is probably less embarrassing to me that the stuff I wrote as a journeyman who shoulda known better. Thankfully, the most embarrassing things are, like, spending 2 days configuring postfix and not realizing that I could just read the log files and it tells me specifically what isn't working. A valuable lesson, but embarrass…

Hahaha, mine: mov ah, 2 mov dl, 7 int 21 int 20 Discovering that I could write my own programs with debug.com was earth shaking. Picked up some decade old book on it at Half Price Books (which went well with my decade old machine -- an 80s model IBM with integrated monochrome green screen) and never looked back.

That would emit a beep from the speaker, right? So long ago...

Re: What Did Ada Lovelace’s Program Actually Do?

#26
post #25

Earlier quoted context omitted.

Hahaha, mine: mov ah, 2 mov dl, 7 int 21 int 20 Discovering that I could write my own programs with debug.com was earth shaking. Picked up some decade old book on it at Half Price Books (which went well with my decade old machine -- an 80s model IBM with integrated monochrome green screen) and never looked back.

That would emit a beep from the speaker, right? So long ago...

None other than beep.com!

Re: What Did Ada Lovelace’s Program Actually Do?

#27
post #21

> she made groups of operations and in the text of her note specified when they should repeat. Does anyone know what "should repeat" means? Was the machine capable of repeating or does this mean the human operator needed to do the repeating?

Babbage's notes describe what we would call branch-if-zero and branch-if-negative instructions which you could use to implement repetition. Control flow was the least well developed part of the instruction set though, presumably because it would be trivial to implement compared to the arithmetic operations so it could wait. If you're interested in that kind of thing I wrote a description of the entire instruction set…

Having just spent the last half hour on your blog I'm even more impressed by what the pair of them achieved.

Thanks for the in-depth, and wonderfully clear write-up.

Re: What Did Ada Lovelace’s Program Actually Do?

#28
post #9
post #4

Holy shit. I got shivers the moment I realized Sinclair actually finds and fixes a bug from the very first program written in 1843. In her “diagram of development,” Lovelace gives the fourth operation as v5 / v4. But the correct ordering here is v4 / v5. 1843! I was recently at the Musee des arts et metiers in Paris, and they have several original Pascalines on display. So many marvels packed into a very tight space,…

What else would you recommend checking out in Paris by way of museums?

The Guimet Asiatic art museum is pretty spectacular:

http://www.guimet.fr/

Re: What Did Ada Lovelace’s Program Actually Do?

#29

Earlier quoted context omitted.

Is this the first documented instance of finding a bug in a computer program? That should be a more well known milestone in my opinion.

The author mentions that another blogger, Jim Randell, found the same error in 2015 when translating the tables to Python: https://enigmaticcode.wordpress.com/tag/bernoulli-numbers/ It's also debated whether these were bugs from Ada or transcription errors. But, yes, it does seem like an interesting milestone

>It's also debated whether these were bugs from Ada or transcription errors

Transcription errors would make this the first bug due to bit rot in a special sense! Still quite remarkable :)

Re: What Did Ada Lovelace’s Program Actually Do?

#30

Earlier quoted context omitted.

For me, that's no big deal: 10 PRINT "HELLO WORLD" Even the horrible crap I wrote as an novice is probably less embarrassing to me that the stuff I wrote as a journeyman who shoulda known better. Thankfully, the most embarrassing things are, like, spending 2 days configuring postfix and not realizing that I could just read the log files and it tells me specifically what isn't working. A valuable lesson, but embarrass…

Hahaha, mine: mov ah, 2 mov dl, 7 int 21 int 20 Discovering that I could write my own programs with debug.com was earth shaking. Picked up some decade old book on it at Half Price Books (which went well with my decade old machine -- an 80s model IBM with integrated monochrome green screen) and never looked back.

Speaking of embarrassing errors, your comment just sent my pre-coffee self on a brief and fruitless visit to http://debug.com
Post reply on HN