Having said that the bootstrap was something like 8 16-bit instructions, a pain but not impossible
Later cards used PROMs, and were pretty fancy. The M9312 had 512 words and included some basic CPU diagnostics. Different variants handled boot from disk, paper tape, console, etc, and you had to specify the options you wanted when you bought the card.
I first read that book before I knew that in British English a vacuum tube is called a valve (from thermionic valve and which makes more sense than the American term, I think), so I was confused by the line about how warm the room was due to all of the valves!
Because the PDPs had magnetic core memory, so the bootloader, once toggled in, stayed in memory. The OS took care not to overwrite it.
And in normal operation you wouldn't have to use it at all, you just switched on your PDP, and it was in the same state as when you switched it off.
Also, bootloaders were short (because peripherals had lots of intelligence); toggling one in was a matter of minutes.
> I think that was because core memory was non-volatile.
Exactly. And when RAM cards were available to replace core (very late in the lifecycle of the minis), the RAM was battery backed to simulate that behaviour.
(Googles it)
"Ah"
"Yes"
The content isn't very interesting, and Claude's comments aren't very detailed. Not bad for 2 minutes of work about a 62 year old computer though. Look out Ken Shirriff, AI is coming for you.²
Addr Octal Instruction Meaning
0001 7512 DCN 12 Disconnect channel 12 (put it in a known idle state)
0002 7712 FNC 12, 4000? Send function code to channel 12's device
0003 4000? └ function code (last bit unclear: 4000 or 4001)
0004 7712 FNC 12, 0001 Send another function code
0005 0001 └ function code
0006 7712 FNC 12, 1500? Send a third function code
0007 1500? └ function code (least certain row)
0010 2000 LDC 0160? Load A with a word count
0011 0160? └ the count
0012 7412 ACN 12 Activate channel 12
0013 7112 IAM 12, 0015 Read A words from channel 12 into memory starting at 0015
0014 0015 └ destination address
1. https://dyninst.github.io/scalable_tools_workshop/petascale2...2. Not really. I have no idea if this disassembly is corrrect.
3. Quora is prison for words.
ENIAC in Action: Making and Remaking the Modern Computer is an excellent summary of the initial design and redesign of the Eniac.
> And John Von Neumann? He came and looked at our stuff and went back to Princeton and wrote a long document about the principles. He gets a lot of credit but the inventions were ours. Someday I’ll write a book on who really invented the computer.
>Johnny learned instantly, of course, as was his nature. But he chose to refer to the modules we had described as “organs” and to substitute hypothetical “neurons” for hypothetical vacuum tubes or other devices which could perform logical functions. It was clear that Johnny was rephrasing our logic, but it was still the SAME logic. Also, he was introducing different but equivalent symbols; nevertheless the devices still did the same things. Johnny did NOT alter the fundamental concepts which we had already formulated for the EDVAC.
>Small wonder, then, that computer history gave von Neumann the credit. Eckert and I, who left the Univ. of Penna. In 1946, no longer had access to the documents which might have helped to show “who did what, when.” But after many years, litigation has unearthed some of those documents, and historians can read what was once classified. But, even after declassification, those reports are not accessible to most people, since they were reproduced in such small quantities. Nevertheless, we hope that more historians will refer to them.
von Neumann's "First Draft of a Report on the EDVAC" was both a summary of discussions by the Eniac team as well as von Neumann's own original work proving and expanding on various aspects of those discussions. It's called the von Neumann architecture because he was the author of the seminal paper, not because he laid any particular claim to the ideas. Eckert and Mauchly were mostly upset about the paper's existence, regardless of author, because it made it impossible for them to patent the stored program idea in general.
As I understand it, even after adaptation to "stored program" mode, the program was still configured rather than loaded and stored, but now configuration was done using the function table dials (essentially a dedicated dial for each program step) rather than patch cords, and was a lot more convenient. Punched cards could be used for reading/writing data, but not for programs.
It seems there was no BIOS because I/O was so primitive. Per configuration a punched card would be read into the "constant transmitter" unit, then one of the read numbers could be copied into one of the 20 accumulators. Or you could do the same in reverse to output data from the accumulators.
As a matter of interest, "that time" being April, it was only two months later in June that the Manchester Baby ran its first stored program.
This is one of the thing we lose as more and more of the conversations turn to people privately asking LLMs things, who do their best to scrape out answers from the existing info or make up a best guess. People are losing the ability to ask experts with real, unique knowledge and then share that knowledge with humanity.
Of course I'd prefer if he answered on a StackExchange site, tho I heard those are in decline too, but at least not enshittified like Quora.
Quora has at least three different ways of folding content, and each one needs its own click: answers truncated at "(more)", comments collapsed behind "View comments", and nested replies collapsed again behind "View more replies", yet tellingly no "Expand all" button.
For logged-out readers there's also a login wall that blurs the rest of the page. The whole thing is fragile. Click the wrong thing, hit Back, or refresh, and it forgets everything you expanded and where you were scrolled, and dumps you back into a feed of unrelated "related" answers.
Worst of all, there's no way to link to a comment so that it restores your viewpoint and opens everything back up. The link lands on a page with everything folded again, and whoever you sent it to has to redo all the clicking to find what you meant. While HN has one kind of fold, [–], and every comment has a permanent item id that takes you straight to it, expanded and in context.
Maybe his last long visit here didn't leave him with a good impression of the "civilized behavior" of Hacker News. hota_mazi aggressively argued that Alan didn't coin the term "object-oriented," and then, when challenged, posted a bunch of unsubstantiated disrespectful misinformation.
Worse, hota_mazi did it while attacking Alan's friend Joe Armstrong in Joe's own memorial thread, days after Joe died, when Joe could no longer answer for himself. Alan exasperatedly asked him twice to do his homework.
Joe Armstrong died on April 20, 2019. The next day his essay "Why OO Sucks" was posted here, and the thread became a place to remember him.
https://www.cs.otago.ac.nz/staffpriv/ok/Joe-Hates-OO.htm
https://news.ycombinator.com/item?id=19715191
arendtio wrote:
> Actually, this is not really about if OO sucks, but to reflect on one of the articles Joe Armstrong wrote. Joe passed away two days ago.
oldpond wrote:
> Joe was truly one of the greats. [...] Thank, Joe.
(Not everyone was so kind. Someone posted just "Why Joe Armstrong sucks"; it's [dead].)
The top comment, by rhblake, quoted Joe's own 2010 explanation of why he changed his mind about OO:
> "Then, my thesis supervisor said "But you're wrong, Erlang is extremely object oriented". [...] Alan Kay himself wrote this famous thing and said "The notion of object oriented programming is completely misunderstood. It's not about objects and classes, it's all about messages"."
That's Joe, in his own words, crediting his supervisor and Alan. hota_mazi replied to it, two days after Joe's death, by accusing both men of opportunism [log in and set showdead=true to view flagged posts]:
https://news.ycombinator.com/item?id=19716281
hota_mazi on April 22, 2019 [flagged]:
> Both Alan Kay and Joe Armstrong struck me as having had the same attitude of trying to capitalize on the topic of object oriented programming, failing to recognize its importance, and then later trying to appropriate it by redefining it.
> Not the best moment of these otherwise two bright minds.
skndr asked:
> Didn't Alan Kay coin the term "object oriented"?
Before Alan had even joined the thread, hota_mazi dismissed Alan's own account of his own work:
https://news.ycombinator.com/item?id=19716318
hota_mazi on April 22, 2019:
> That's what he claims but there's zero evidence besides his own word.
lliamander asked the obvious question:
> Well, how large is the pool of other possible candidates? Wouldn't someone from that time period (say the Simula folks, or another PARC employee) challenge that assertion?
So did DonaldPShimoda:
> Ah, so you have evidence that it was somebody else?
hota_mazi admitted he had none:
> I don't, but that's not how the burden of proof works.
DonaldPShimoda, who works in programming language research, set him straight:
https://news.ycombinator.com/item?id=19716632
> Every source I've ever come across on this topic (and I work in PL research) points to Kay as the originator of the term "object-oriented" in relation to programming. No exceptions.
> You are now making an affirmative assertion that Alan Kay did not coin the term. The burden of proof is on you, not him.
hota_mazi demanded the sources while still rejecting the claim while hypocritically not doing any homework or providing any sources to his misinformation:
> Link these sources, then! Even someone who recently interviewed him and researched the subject for months confessed he could never corroborate that claim.
> You make the claim he coined the term, the burden of proof is on you.
> Until you do, it's perfectly reasonable and intellectually honest to reject that claim.
DonaldPShimoda:
https://news.ycombinator.com/item?id=19716791
> This would be just like saying "Well I don't think da Vinci really made the Mona Lisa. I mean, all we have is his word for it." [...]
> Your position is not "intellectually honest" because it sincerely looks like you're just trying to be antagonistic.
Then Alan arrived and said it plainly, in his own words:
https://news.ycombinator.com/item?id=19717640
alankay on April 22, 2019:
> I didn't coin the term "object" -- and I shouldn't have used it in 1966 when I did coin the term "object-oriented programming" flippantly in response to the question "what are you working on?".
And he replied directly to hota_mazi's first comment:
> This is way off. Please try to do more homework.
hota_mazi wasn't done with Joe. lliamander had challenged him:
> I'd be really interested to hear what you think they missed, because I find your claim to be surprising and a bit preposterous.
So, in the thread where people were mourning Joe, hota_mazi explained that Joe had been a bandwagon-chaser who bent the definition of OOP to cash in on its success:
https://news.ycombinator.com/item?id=19716419
hota_mazi on April 22, 2019 [flagged]:
> Armstrong wrote the very famous "Why OO sucks" and then a decade or two later, changed his mind when he saw how successful OO was, and then tried to retrofit Erlang into an OO language. Not by changing Erlang, but by twisting the definition of OOP so that Erlang would fit it.
That contradicts Joe's own explanation, quoted at the top of the same thread, and Joe was no longer alive to correct it. revvx did it for him:
https://news.ycombinator.com/item?id=19716488
> Joe Armstrong was criticizing C++-style OOP when he wrote his critique. After he learned more about Alan Kay's view on OOP, he decided that Erlang is closer to Alan Kay's OOP and he approves that specific flavor of OOP. He didn't change his stance based on popularity.
And Alan, two days after losing his friend, was left defending Joe's character:
https://news.ycombinator.com/item?id=19717646
> That isn't what happened at all (see the rebuttal by revvx). Joe was a great guy and also a great systems thinker. And he was the last person to worry about "bandwagons" (quite the opposite!)
hota_mazi doubled down, arguing that since mainstream OOP ended up meaning something else, Alan's and Joe's view didn't count:
https://news.ycombinator.com/item?id=19716595
> He doesn't even mention C++ in his essay [1], but regardless, the C++ OOP is pretty much the mainstream OOP, which we still use today in Java, Kotlin, C#, etc...
> And... no, the change in mindset about OOP never happened. Kay and Armstrong's view of OOP never took on. Today, OOP is still not seen as message passing and mostly seen as polymorphism, parametric typing, classes/traits/interfaces, and encapsulation. The complete opposite of what Erlang is.
> [1] http://harmful.cat-v.org/software/OO_programming/why_oo_suck...
revvx:
https://news.ycombinator.com/item?id=19716625
> I'm the one mentioning C++. To anyone familiar with both styles, Joe Armstrong is clearly not talking about Smalltalk-style OOP in his essay, he's talking about C++/Java/etc style. And later on he only praised Smalltalk-style OOP.
To which Alan could only say, again:
https://news.ycombinator.com/item?id=19717662
> Again, please do your homework.
On top of that, people doubted it was really Alan at all. hannofcart asked:
> Are you the Alan Kay. Is there any way we can verify this is you? The HN user account seems to have a very low "karma" rating, so one can't help but be more suspicious.
Alan answered:
> I'm the "computing Alan Kay" from the ARPA/Parc research community (there's a clarinettist, a judge, a wrestler, etc.) I did create a new account for these replies (I used my old ARPA login name).
DonaldPShimoda still wasn't sure:
https://news.ycombinator.com/item?id=19721376
> I'm a little skeptical. [...] A one-day-old HN account claiming to belong to one of the most important people in CS from the past 50 years seems a little suspicious haha.
That's what Alan was answering with his weary verdict:
https://news.ycombinator.com/item?id=19721772
alankay on April 22, 2019:
> An interesting and unfortunately true commentary on the lack of civilized behavior using technology that actually required a fair amount of effort -- and civilized behavior -- to invent in the first place.
(To DonaldPShimoda's credit, he apologized, and Alan graciously reminisced about crawling over Simula machine code listings unrolled down the hallways of the Merrill Engineering Building.)
A week later Alan was still correcting the record, when someone misquoted him:
> Actually, I said: "I invented the term "object-oriented", and I didn't have C++ in mind". In other comments here I explain why "object-oriented" was a too quick and bad choice for what I thought I was doing ...
And got no check at all.
Edit: Maybe it depends on where you come from, or what they think you come from. Or using VPN. Wrong browser with insufficient base for uBo. uBo configured wrong. (Not?) using an ad-blocking DNS-Server, so that shit doesn't even make it to your local uBo?
Tested from Hamburg, Germany via private tunnel from my home in Colorado, which also works.
David Wheeler (of subroutine fame) figured out the most sensible thing to put in the tiny ROM was a paper tape loader and mini-assembler that loaded the rest of itself from paper tape. So at switch-on the machine would start reading the tape input and run. Programs could be written on the teletype with mnemonics and relative addresses in octal.
It seems a little strange that more advanced later machines like the original PDP-11 from 1970, couldn't "autostart" from ROM like that. You had to toggle in a bootloader.
I think that was because core memory was non-volatile. (EDSAC didn't use core; it had a refreshing DRAM-like delay line memory.) With core, you only had to toggle the bootloader into once and, provided your software didn't accidentally overwrite it, it was still there after a power cycle. So re-toggling in the boot loader was not really that common, despite how much lore surrounds it.