logoalt Hacker News

Altair Basic Interpreter Source Code (1975) [pdf]

48 pointsby Eridanus2yesterday at 8:08 PM32 commentsview on HN

Comments

tailrecursiontoday at 4:33 AM

One of the things I'm often curious about is how various BASIC interpreters organize memory for string storage. You'd think there's some way to reclaim memory after an expression involving intermediate strings is finished. But you don't see descriptions for how BASIC works in this regard.

petilontoday at 12:31 AM

Credit should be given to Digital Equipment Corporation. Back then software isn't what companies made money on, it is hardware. Source code wasn't guarded as a secret as it is today, and you could find print outs in the dumpster [1]. Bill Gates and Paul Allen found the source code of DEC Basic [2] and ported it. (Wikipedia says Microsoft Basic was "inspired by" DEC's PDP-10 BASIC-PLUS.)

[1] https://www.businessinsider.com/10-things-you-didnt-know-abo...

[2] https://www.theregister.com/software/2000/06/29/bill-gates-r...

show 2 replies
davidfekkeyesterday at 9:29 PM

Here is the 6502 assembly source code for Microsoft Basic:

https://github.com/microsoft/BASIC-M6502

pikeryesterday at 9:06 PM

These two guys* were crazy productive in the 2 months they worked. Just the level of commenting shows how much thought they were able to give it during that span.

* plus the math package guy

show 4 replies
thrownawayszyesterday at 9:01 PM

"FILE WILL BE DELETED AFTER PRINTING"

hah I've never seen that before but reminds me to roguelike games.

"permadeath coding" would be actually fun. IF compiler error THEN erase code repository or something like this

show 3 replies
ChrisArchitectyesterday at 10:10 PM

Associated blog post from 2025:

Celebrate 50 years of Microsoft with the company's original Source code

https://www.gatesnotes.com/microsoft-original-source-code

(Discussion: https://news.ycombinator.com/item?id=43575884)

show 1 reply
joebigyesterday at 10:04 PM

And all of it within ~4 Kbytes too!

show 1 reply
harkenugentyesterday at 11:45 PM

[dead]