4 ms·
Stack machines were never very popular outside of Burroughs. Burroughs built several of them implementing a number of elegant ideas. When Algol first came out,
by dbcurtis 7y ago
Stack machines were never very popular outside of Burroughs. Burroughs built several of them implementing a number of elegant ideas.
When Algol first came out, they put a grad student summer intern onto the project of writing an Algol compiler, from scratch, for one of the stack machines. The intern completed the entire compiler in one summer. So, the question is, was the compiler a single summer intern project because stack machines are so well suited to Algol, or was the compiler a single summer intern project because the intern was Don Knuth?
- mgsouth 7y agoThe HP3000 [0] ("classic", pre-PA-RISC) was stack-based. It was a pretty popular business machine; the Classic architecture was produced between early 70s and early 90s. It was 16-bit, segmented, Harvard, and competed against IBM S/32 - S/36, AS400, PDP-11, and Vax. To most programmers there wasn't anything too special about the architecture; almost all development was in RPG, COBOL, or a really incredible (for CRUD) 4GL product from Cognos called Powerhouse [1]. [0] https://en.m.wikipedia.org/wiki/HP_3000 https://en.m.wikipedia.org/wiki/HP_3000 [1] https://en.m.wikipedia.org/wiki/PowerHouse_(programming_language) https://en.m.wikipedia.org/wiki/PowerHouse_(programming_lang...
- kjs3 7y agoActually, there were a number of stack machines that were pretty popular in the early days beyond Burroughs (which still exists). As mentioned, the HP3000's were stack machines and hugely popular. The ICL2600 and early Tandem machines were stack machines. And so was the Transputer, which still exists in various descendants. As to Algol, there's certainly a case that a stack machine is a nice abstraction for targeting an Algol compiler. However, having toyed around with writing an Algol compiler, I think the fact that it's a compact, well thought out language with an rigorously described syntax (BNF) that makes it relatively easy to attack, regardless of target.