The key thing about B+ is that it's a compiled BASIC, it compiled into P-Code, that was then executed. This is in contrast to MS-BASIC which interpreted the parsed token stream over and over.
But, there is no way that the entire thing was compiled each time you said "RUN", that would have been much to expensive. But, it was compiled. At the same time, it kept the entirety of the BASIC program in memory, as text. So, it had to store both the raw text form, and the compiled form. Seems quite expensive given the limits of machines back in the day.
So, I've always been interested in the design and engineering history of B+.
Similarly, I'd love to know where Gates and Allen got the idea to use a tokenized form to store the program, as its an elegant solution in a tight memory budget to store the program source and runtime.
They're clever guys, and maybe they made it up out of whole cloth, but it would be interesting to know what may have inspired them to do it that way. It wasn't BASIC-PLUS, as that's not how it worked.
The key thing about B+ is that it's a compiled BASIC, it compiled into P-Code, that was then executed. This is in contrast to MS-BASIC which interpreted the parsed token stream over and over.
But, there is no way that the entire thing was compiled each time you said "RUN", that would have been much to expensive. But, it was compiled. At the same time, it kept the entirety of the BASIC program in memory, as text. So, it had to store both the raw text form, and the compiled form. Seems quite expensive given the limits of machines back in the day.
So, I've always been interested in the design and engineering history of B+.
Similarly, I'd love to know where Gates and Allen got the idea to use a tokenized form to store the program, as its an elegant solution in a tight memory budget to store the program source and runtime.
They're clever guys, and maybe they made it up out of whole cloth, but it would be interesting to know what may have inspired them to do it that way. It wasn't BASIC-PLUS, as that's not how it worked.