Slashdot Mirror


BASIC Computer Language Turns 40

5 REM nam37 codes
10 PRINT "In 1963 two Dartmouth College math professors had a radical"
20 PRINT "idea - create a computer language muscular enough to harness"
30 PRINT "the power of the period's computers, yet simple enough that even"
40 PRINT "the school's janitors could use it."
50 END

15 of 1,042 comments (clear)

  1. Re:ahem by bee-yotch · · Score: 5, Informative

    they started it in '63, they didn't finish it till '64. rtfa

  2. Re:ahem by jonnosan · · Score: 3, Informative

    RTFA - 1963 is when they had the idea. it took till May 1, 1964 to finish it.

  3. Re:WHY! WON'T! IT! DIE! by Theatetus · · Score: 5, Informative
    I've heard it claimed that BASIC was "invented" by Microsoft

    Microsoft certainly doesn't claim that.

    or that they own it

    Nor do they claim that

    or that their first product was a BASIC interpreter

    They do claim that, because it's true.

    What's the connection between MS and BASIC?

    BASIC was always the applications and scripting language at Microsoft. For a long time, DOS and the early Windows shipped with a free basic interpreter (sadly, those days are over).

    Visual Basic remains one of Microsoft's flagship products. It's philosophy is similar to the original BASIC philosophy: you shouldn't have to be a comp sci graduate to write computer programs. Whether VB succeeds in that regard is another question, but it's what they intended.

    BASIC is still Microsoft's language for application automation (think Visual Basic for Applications), Web development (ASP with VBScript), and as a tool control language for gluing together objects written in lower level languages. In a sense, some form of BASIC fills the roles in Windows that Scheme, Perl, and TCL occupy in UNIX.

    --
    All's true that is mistrusted
  4. Dijkstra said it best ... by zonix · · Score: 4, Informative

    "It is practically impossible to teach good programming style to students that have had prior exposure to BASIC; as potential programmers they are mentally mutilated beyond hope of regeneration." -- Professor Edsger Dijkstra

    Oh yeah and "Goto considered harmful" too, of course.

    RIP buddy. :-)

    z
    --
    What would an EWOULDBLOCK block, if an EWOULDBLOCK could block would? -- me
  5. Re:A Poem! by mph · · Score: 4, Informative
    Mod parent down, a Haiku is 575 not 343 (is program 3 or 4? If 4 then 353, either way it's wrong)
    Mod yourself down. You forgot to pronounce the line numbers.
  6. Re:A Poem! by mlyle · · Score: 4, Informative

    10 PRINT "This is a"
    20 PRINT "Haiku program"
    30 GOTO 10

    Ten print this is a (5)
    twen-ty print hai ku pro gram (7)
    thir-ty go to ten (5)

  7. Re:Best Headline Ever by Pranjal · · Score: 3, Informative

    RTFA. It's a direct rip-off from the article.

  8. Re:Nostolgia by AKAImBatman · · Score: 5, Informative

    You wish is my command. Here's the source code plus there's a PALM version at the bottom of the list. In case you want to type it in yourself, SmallBASIC accepts traditional BASIC syntax. Someone event did a SmallBASIC port of Super Star Trek for you!

  9. Re:WHY! WON'T! IT! DIE! by joeykiller · · Score: 4, Informative
    BASIC was always the applications and scripting language at Microsoft. For a long time, DOS and the early Windows shipped with a free basic interpreter (sadly, those days are over).
    Actually, they're not. Every copy of Windows XP, and probably Windows 2000 and ME and maybe even 98, ships with the Windows Scripting Host. One of the languages supported by WSH is VBScript ("Visual Basic Script").

    VBScript is surprisingly capable. Read more about it here.

  10. Re:Troll? Moi? by anethema · · Score: 3, Informative

    GOTO's make spaghetti code. It is very hard to trace through, especially if the code is uncommented. If you end up with a bug, you will have a very hard time trying to trace through your GOTO's to find it.

    Loops and functions keep things neet, organized and structured (assuming a half-competant programmer)

    This isnt a point of view thing. Some things are confusing and some arent, thats just the way it is.

    Try maintaining code full of goto's. Good luck.

    --


    It's easier to fight for one's principles than to live up to them.
  11. Re:Today we use Bash by shawn99452 · · Score: 3, Informative

    Your sig in C will also run out of stack space and crash very quickly.

  12. Re:missing line by CRCulver · · Score: 3, Informative

    While I agree with the parent poster that programming shouldn't be fun again, please take a look at his posting history and notice that all his posts are the same, some lines that are barely on-topic, and then a final paragraph, each time slightly reworded, that exhorts readers to write to their congressmen. It is unfortunate that such attempts for karma-whoring are consistently modded-up.

  13. Re:Today we use Bash by ajs318 · · Score: 5, Informative
    Better to use something like
    int main() { /* i wish this thing would indent properly */
    for (1;1;1) { /* will loop forever */
    printf("ajs318 is a better programmer than Jorkapp\n");
    };
    };
    Repeatedly calling main() from within main() probably would overflow the stack. It's the equivalent of using GOSUB in BASIC when you meant GOTO -- GOSUBs and function calls have to remember where they were called from, which is what a stack is used for. If the compiler you were using was tolerant enough that you could declare void main(), then it would last about twice as long before crashing and burning, due to not having to temporarily remember an integer it's later going to have to throw away.
    --
    Je fume. Tu fumes. Nous fûmes!
  14. Re:missing line by ajs318 · · Score: 3, Informative

    On a Spectrum or BBC micro, you will get a "no such variable" error -- the British BASIC dialects tended to prefer to crash out rather than silently assign 0 to variables on first reading. Although, "X = X + 1" will still work without predefining X, because the interpreter creates a variable X as soon as it sees it on the left-hand side of an assignment. Spectrum BASIC expected every statement to start with a keyword (verb), accessed by pressing a letter key, and so had to introduce "LET" for assignments -- "X = 1" would have to be written "LET X = 1" on the Spectrum because if you pressed X when a keyword was expected, you would get CLEAR.

    --
    Je fume. Tu fumes. Nous fûmes!
  15. Learn to count! by joel.neely · · Score: 4, Informative

    The program's source is the haiku, not its output.