News for hackers. Stuff that matters.
Re:Lost Lessons from 8-Bit BASIC by laumars on Tuesday September 02, 2014 @09:32AM (#8257380)
> BASIC and its command shell were in an 8KB ROM. They were one monolithic program. You've got modern ideas, and trying to apply them to a 20-year-old environment. Its not 'like' a lot of things; it came before them so the most you could say is, those things are like BASIC.

Except what you've described is exactly what I described with Bash ;)

> What BASIC was, was an extremely accessible try-it-now environment that needed no installation, no setup, no environment variables, no directory structure. It was what we thought of when we thought of interpreters, as opposed to compilers. But then interpreters got all file-oriented and broken too.

Again, all that is comparable with Bash:

1. Bash doesn't need any installation with most UNIX-like systems. But even in the rare example that Bash isn't bundled with your OS, there's the Bourne Shell (sh) or even Windows cmd.exe (for all it's faults).

2. Bash et al doesn't require any set up.

3. Environmental variables are just global OS variables and since BASIC wasn't namespaced, all variables were effectively environmental variables.

4. Directories are a file system thing, not a language thing. However it's worth noting that many BASIC systems did have a directory structure even if though (at that point) nested subdirectories didn't really exist. You could have different storage devices that were switchable (akin to changing drive letter in DOS) and you could store multiple files on an particular medium. In fact I still have a stack of floppy disks for an Amstrad CPC 464 (which ran Locamotic BASIC) in my attic that would testify to this.

5. Bash et al are interpreters.

Don't get me wrong, I romanises about the old days too. They were fun. But I don't think you can blanket say "[it's a] 20-year-old environment. Its not 'like' a lot of things" just to dismiss any arguments you dislike.

Re:Lost Lessons from 8-Bit BASIC by JoeAltmaier on Tuesday September 02, 2014 @10:05AM (#8257601)
I only disliked the wrong arguments :) Like

"The IDE facets that the author fondly remembers isn't part of the BASIC programming language, it's part of the command shell"

There was no such distinction. That's recasting of the facts into something understandandable today.

Know why the language keywords were so short? Because in an 8K ROM the symbol table was a significant hit on resources. Add a keyword? Means remove some other feature. It was a whole different world, with different constraints. And still it was usable, accessible, friendly even. At least when coming from nothing to a computer (instead of coming from 20 years of growth and confusing hindsight with foresight).

Re:Lost Lessons from 8-Bit BASIC by laumars on Tuesday September 02, 2014 @10:24AM (#8257719)
> There was no such distinction. That's recasting of the facts into something understandandable today.

But that's the whole bloody point of the article. If you have an issue with that then take it up with the author rather than me.

Please also remember that the Bourne Shell is as old as BASIC micro computers. So my comparisons are of two environments of the same age rather than older systems vs modern systems (like you keep accusing me of).

And around the same time some micro computers (even the lower end ones) would support other interpreters (eg the BBC Micro supported BBC Basic, LISP, LOGO, Fortran, and a few others) and you could switch between languages like you switch shells in Linux. Which is also why I like to make the distinction between the language and the shell.

> Know why the language keywords were so short? Because in an 8K ROM the symbol table was a significant hit on resources. Add a keyword? Means remove some other feature. It was a whole different world, with different constraints. And still it was usable, accessible, friendly even.

I know - I was there. And while it's interesting, it's also irrelevant to any of mine or the authors points.

[deleted]
Re:Lost Lessons from 8-Bit BASIC by JoeAltmaier on Tuesday September 02, 2014 @10:21AM (#8257701)
Good point! Minicomputers were around before micros. So BASIC wasn't born in a vacuum. Lots of precedent.

What's relevant is, modern ideas of encapsulation, object-oriented design or even structured design were not available to the inventors of early language ROMs. Nor did they have the room for such luxuries. They wrote one blob of code, probably in one large .asm file, that got the job done.

Re:Lost Lessons from 8-Bit BASIC by laumars on Tuesday September 02, 2014 @10:31AM (#8257763)
They were available as Fortran, LISP, C and Pascal were all around back then. But you're right about the necessity code the ROMs in Assembly .