back to article 10 PRINT "Happy 50th Birthday, BASIC" : GOTO 10

Wanna feel old? Thursday marks the fiftieth anniversary of the invention of BASIC, the programming language that took the computing world by storm during the PC revolution of the mid-1970s and 1980s. A version of BASIC shipped with practically every home computer of the era, but the language actually dates back to 1964, when …

COMMENTS

This topic is closed for new posts.

Page:

    1. John Brown (no body) Silver badge

      Re: Horrible Travesty of BASIC

      It didn't support any of the features of a real language, like pointers."

      In 1977, TRS-80 Model 1, Level II basic - VARPTR returned the memory address of the specified variable, a pointer. Few people understood what that was for or how to use it, but it was a pointer and very, very useful, although most of those few who did use it generally only used it to be able to POKE machine code routines or graphic chars into string variables.

      "You could use it to write a small program but it couldn't be used to write structured programs. If you tried to write a large program you got spaghetti code."

      Even the early BASICs had at least GOSUB so it was entirely possibly to modularise your code. Many had defined functions (DEF FN()), and later procedures made an appearance, both of which use local variables. All of this was 30 years ago, when I was using BASIC to learn programming.

    2. JeffyPoooh
      Pint

      Re: Horrible Travesty of BASIC

      @BBG "...didn't support any of the features of a real language, like pointers."

      IIRC, my Radio Shack Color Computer (MS-BASIC, circa 1980) *did* support pointers, in the sense of a variable (or variables) pointing or indexing into an array (or a multidimensional array). Once you have that building block, you can do *anything*. Unlike the LOGO language which did have huge gaps, the BASIC provided with the CoCo could do *anything* you could imagine. It was completely complete. The *only* missing command was that the joystick buttons had to be read with a PEEK command; but you had the PEEK command so that made it 100.0% complete.

    3. Roland6 Silver badge

      Re: Horrible Travesty of BASIC @Billy Bob Gascan

      What do you really expect from what was designed for teaching as a first language in introductory computing courses. When I first encountered it back in the mid 70's, it enabled 14~15 year old's with no programming experience to start learning the basics of computer programming; those who showed an aptitude for programming quickly moved on to Fortran IV.

      By the way, there is nothing wrong with interpreted code; in the right environment. The LivingC development environment (1985~89) was built around a interpreter for the 'C' language. By using an interpreter it was able to provide many useful aids to the developer, specifically enabling them to visually execute and debug their code logic at the 'C' language level - in the absence of supporting functions and libraries (LivingC automatically created relevant stubs enabling the programmer to see parameter values supplied and input suitable return values), something that had not been done previously in a 'C' programmers workbench.

      1. Destroy All Monsters Silver badge

        Re: Horrible Travesty of BASIC @Billy Bob Gascan

        There is everything right with interpreted code.

        Premature compilation is the root of all inflexibility. It is also an historical accident because machines used to be small and weak.

  1. cheveron

    ANSI minimal BASIC

    I learned BASIC from reading the keycaps on a ZX Spectrum Plus. It got me into programming. I went on to learn C. Then when emulators took off I taught myself Z80 assembly language. When I went back to university I learned Java. I think BASIC did what it set out to do, which was to give non-technical people an easy entry point to get computing tasks done. I think the modern equivalent is probably spreadsheet programming. I don't think it's as rewarding though.

  2. Anonymous Coward
    Anonymous Coward

    First ever basic program

    i ever typed was the "Plough" 10,000 years ago, now and 10,000 in the future out of the zx81 manual.

    Those flashing square dots on a screen started a lifelong love of IT...

  3. Tom 13

    I learned BASIC on the venerable TRS-80 Model III

    Statistic teacher in high school let me use it to write some simulators for some problems we couldn't solve theoretically. The following year they offered a class programming in BASIC. I eagerly signed up for it not realizing I'd already learned more than 90% of what they'd be teaching and most of what I hadn't learned was sort of pointless at least as presented (DATA statements for the program without actual reading of data from an external source). I do however recall one very simple and highly instructive assignment: Simple cash register program where you'd input some prices, cash tendered and calculate change. Every one of us went straight to FLOAT for our numeric input and none of us checked for errors. And then the teacher put in 4.95 for the price of the item and 5.00 for the money tendered.....

    I'm not quite as old as BASIC, but that was a lesson I've carried with me ever since that day in class.

  4. Jim 59

    ?SN ERROR

    Good article. There is no doubt BASIC is groovy and quick to learn. Coupled with colour and sound it made the first home computers into attractive and interesting items.

    True it lacks structure and teaches bad habits, but so do stabalizers on a bike. If it had been Pascal, and not BASIC, nobody would have bothered to type in 1-line programmes in Laskys/Commet, or learned to program.

  5. Billy Bob Gascan

    There Really is no such thing as BASIC

    Because the original version of BASIC was so bad, various dialects were created to add the features of a real language. These were added in an unorganized and uncoordinated fashion, resulting in a Tower of Babel of BASIC dialects, see:

    https://en.wikipedia.org/wiki/List_of_BASIC_dialects

    What a nightmare to program in a language with hundreds and hundreds of incompatible dialects! Good bye BASIC. Don't let the door hit you on the way out.

    1. James O'Shea

      Re: There Really is no such thing as BASIC

      You seem bitter. Your girlfriend would rather spend time coding in BASIC than with you, eh?

      1. Billy Bob Gascan

        Re: There Really is no such thing as BASIC

        Ask your boyfriend. At least I'm not nostalgic for something terrible.

        1. James O'Shea

          Re: There Really is no such thing as BASIC

          Yep. Bitter Billy Bob, that's you.

    2. ErichK

      Re: There Really is no such thing as BASIC

      Somebody correct me if I'm wrong, but how much better is the situation in a "more respected" language like C? The core C language is very portable, sure. It's lean and only consists of specific commands. But guess what ... when you actually want the machine to do useful things like input/output and graphics, you have to link your code to libraries, and how standardized are those libraries? Can I take a complex Microsoft C application and have it run on other architectures without modification? Does this happen to other languages too?

  6. Herby

    You really haven't done Basic...

    ...until you were FORCED to use the LET statement. The 'original' Dartmouth Basic required the use of the LET statement, and if you had ANY upbringing in other languages, Fortran for instance, you always forgot to put it in. Bummer.

    The original basic described in the blue pamphlet (I actually got to see one!) didn't have matrix operators. Those were added in later. It was quite nice while it lasted, and when the various microprocessor versions came out, you could usually do the small problems that you whipped up in the half hour preceding. That is what the language was designed for.

    Of course, the promoters ALWAYS included a couple of games (Blackjack was a personal favorite) to keep you busy and entertained. The biggest feature was the interactiveness. On an ASR33 teletype, you got immediate feedback if your program had problems, or needed editing. At 10 characters/second, you did a lot of checking before you typed "run".

    Heady days. Of course the caveat applies here: "If you remember the 60's you weren't really there".

    1. TRT Silver badge

      Re: You really haven't done Basic...

      ""If you remember the 60's you weren't really there"."

      And if you remembered ZX81 BASIC then you didn't suffer from RAM pack wobble.

    2. MrT
      Mushroom

      Ah, the ZX81...

      ...according to the adverts at the time, powerful enough to run a nuclear power station, until someone knocks the table it's sat on, the RAM pack wobbles and the computer crashes, leading to the inevitable China Syndrome and 100-mile circle of death.

      All hail the Big Blob of Blu Tack, saviour of mankind...

      1. TRT Silver badge

        Re: Ah, the ZX81...

        Powerful enough to calculate the Ultimate Answer to Life, The Universe and Everything.

        It's...

        It's...

        4/2000

  7. Anonymous Coward
    Anonymous Coward

    N=0

    10 PRINT “Happy Birthday "

    IF N<>2 THEN

    PRINT “To you”

    ELSE

    PRINT “Dear BASIC”

    END IF

    N=N+1

    IF N<4 THEN

    GOTO 10

    END IF

    1. MrT
      Pint

      Just reading that...

      ...set my mind off trying to adapt it to play BEEP the musical accompaniment in full 8-bit ZX BASIC mono glory, whilst still being reasonably synchronised to the text display.

      And just typing that made my mind jump to what would be required to emulate a 3-channel sound from the same single-channel audio system...

  8. This post has been deleted by its author

  9. Fink-Nottle

    HP BASIC

    In the late 70's Hewlett Packard gas chromatographs shipped with HP BASIC. I remember programming bogus error messages onto colleagues instruments. A great way to make the victim's Monday morning even more special.

    https://en.wikipedia.org/wiki/Rocky_Mountain_BASIC

  10. i1ya

    The funny thing is...

    that my dad bought me an illustrated 3-book series about computers when I was about 8 yrs old. I have read about inventors of Basic, about first mass-production computer (Altair, if I spell it correctly), about Jobs and Wosniak, about Apple and Microsoft, about movement against proprietary software. And now, 22 years later, I read about the same things! (at least, nothing in that book mentioned an Internet)

  11. Levente Szileszky

    BASIC = fun :)

    First programming language I've managed to learn, as I recall at the age of ~12, on my ZX Spectrum. I still remember the excitement when my first own longer piece ran without an error... :)

    ...then I'm pretty sure the next thing I did was either loading some game from cassette (most likely copied from someone else as you couldn't buy stuff like that behind the Iron Curtain back then, we had to by the Spectrum itself in Vienna) or started typing in the next BASIC game from the latest Spectrum magazine. =)

  12. Sandgroper

    LET X = ??? Where X come from

    Lunar Landers on PDP-8, Coding in machine language, loading code via toggle switches, STOP, RESET, PROGRAM LOAD.

    Then the migration to high level assembly language. It was all great stuff. Then along came BASIC with LET X = 10;

    What do you mean LET?

    Where did X come from?

    What register is that or what memory location is being used - certainly nothing I declared.

    Boy those were troubling issues in the day...

  13. Ian 55

    Atari

    They licensed a 6502 version of Microsoft's BASIC, but decided it wasn't fit for purpose. It certainly wouldn't fit into an 8K byte cartridge which the spec said. And they needed a BASIC now.

    So they got Shepardson Microsystems to write a new one. It did fit, and they did it so quickly that it was finished before the contract was signed.

  14. Anonymous Coward
    Anonymous Coward

    We can remember it for you wholesale ..

    "Flash forward to 1975, when electronics vendor MITS paid two young programmers to create a BASIC interpreter for the Altair 8800, an early microcomputer. Those coders were named Paul Allen and Bill Gates"

    Based on source code originating from "Decus Basic" on a PDP-8 while Gates was a student at Lakeside School ..

    http://mike.dos.ru/docs/Bruce_Montague/open_source_license.htm

    "The best way to prepare [to be a programmer] is to write programs, and to study great programs that other people have written. In my case, I went to the garbage cans at the Computer Science Center and fished out listings of their operating system."

    http://www.salon.com/2004/03/19/programmers_at_work/, Susan Lammers, April 1986

    1. Destroy All Monsters Silver badge
      Windows

      Re: We can remember it for you wholesale ..

      Friday, Mar 19, 2004

      “There’s this wonderful outpouring of creativity in the open-source world,” [virtual-reality pioneer Jaron Lanier] said. “So what do they make — another version of Unix?”

      [Jef Raskin, who created the original concept for the Macintosh] jumped in. “And what do they put on top of it? Another Windows!”

      “What are they thinking?” Lanier continued. “Why is the idealism just about how the code is shared — what about idealism about the code itself?”

      Having everything ass-backwards, even 10 years ago. Criticizing what you pretend to stand for.

      I hate these people so much.

  15. Anonymous Coward
    Anonymous Coward

    ...and before BASIC there was Atlas Autocode.....

    This would be in 1969 or 1970. Create a program on paper tape, send it to the "data centre", and get back the tape and the printed output 24 hours later. Ah....those were the days!

  16. PAT MCCLUNG

    Clerk

    BASIC, designed by John Kemeny to teach idiots about computing, is one of the geatest didasters eve perpetrated on the human race.

  17. This post has been deleted by its author

Page:

This topic is closed for new posts.

Other stories you might like