←back to thread

97 points nkali | 1 comments | | HN request time: 0.223s | source
Show context
dsand ◴[] No.46179984[source]
My partner Elaine Gord was on VisiOn's C compiler team in 1982-1984 with two others. They experimented with having two instruction sets: the native 8088 code for best performance, and a C virtual machine bytecode for code density. The two modes were mixed at the function level, and shared the same call/return stack mechanism. This was terrible for speed, but was thought necessary because the target machines did not have enough ram for the total VisiOn functionality. I don't know if the bytecode scheme got into "production".
replies(1): >>46180659 #
pdw ◴[] No.46180659[source]
All of Microsoft's applications used to do that! The 16-bit versions of Word, Excel, PowerPoint, etc all were implemented using bytecode. That technology was only integrated in Microsoft C and made public in 1992 [1], before that the Microsoft applications group used their own private C toolchain. A copy of it can be found in the Word 1.1 source release [2] ("csl").

[1] https://sandsprite.com/vb-reversing/files/Microsoft%20P-Code... [2] https://github.com/danielcosta/MSWORD

replies(3): >>46181326 #>>46182587 #>>46186491 #
1. reactordev ◴[] No.46181326[source]
C was very much the Javascript of its day. Hand rolling toolchains and compilers to the bytecode they knew and loved (or despised).

This is awesome history. Formal history only remembers the what’s, the when’s, rarely does it catalog the why’s, or how’s. The decision making process of those early programmers helped shape a whole industry.