![]() If you were going to deploy a product, you had to use the tools that were available, which was either bare-naked assembly or, on microcomputers, the BASIC interpreter that shipped in ROM (often 16K in a 64K address space) with the system. CPUs were clocked at a few MHz (often much less for microcomputers) and had less memory than would be occupied by the HTML it takes to render this page. To understand why, you have to understand the context of the 1970s and 1980s, when BASIC grew on mini- and microcomputers.īack then, the machinery was positively scrawny by today's standards. Yes, there were numerous commercial products and other "serious" development done in BASIC. Some even went a little to the extreme: OAOO, YAGNI, TSTTCPW, pairing, refactor mercilessly, that sort of stuff. Oh, and structured programming, a little later - "by convention" again. Rigorous use of conventions also helped - you know, like "you MUST always target a GOSUB at a comment line that says what this routine does, and you SHOULD do the same for a GOTO when possible. A lot like a fork and exec, but without the fork, only better because the whole memory space was shared. A gosub on steroids (because you got more memory to use), but way slower (because it took a while for the machine to find the program on the tape, and load it in, and then rewind and find the original program and load that back.). We also used modularity - where you called a new program, ran it till it quit and returned back to the calling program. We didn't actually have that problem until micro-er, home computers showed up, with a BASIC interpreter that couldn't do renumbering by itself. Well, you had to manage your resources pretty carefully - things like line numbers - because you didn't want to run out of those real pain in the behind to have to renumber a whole section, and type it all back in, without accidentally losing a line or two of code. Oh, sorry - you meant the limitations of BASIC. And two tape drives, if possible, because automata theory aside, merge sorting on a single tape is, well, a tad slow. ![]() Well, the first thing you did was send the customer back to IBM for more memory, Because who could write anything serious in 8 KB? You simply had to have 16. Everything that wasn't raised floor was likely getting done in BASIC. Want to track iron ore from mines onto trains onto ships. Utility bills, new and used car inventory, garbage truck pickup and beverage delivery scheduling? Yup - BASIC. The 5110 followed that, with the tape drives replaced by 8" floppies.Ĭan you say general ledger, payroll, accounts payable, accounts receivable, inventory control, and invoicing? I have been there, done that - in BASIC. Originally built for scientists ( APL in ROM was also an option), but then a few accounting types discovered it, and started a craze: every small business wanted one. ![]() a 24 line screen, and a printer, all for a measly USD 10,000 - an order of magnitude cheaper than your typical mini. It had BASIC in ROM, a big cassette tape drive (or two), 8 KB of memory. ![]() Before the Altair/MITS/SWTPC/Kim/Sinclair/Pet/RadioScrap/OSI/Apple things happened, there was a delightful little machine known as the IBM 5100.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |