On This Date in 1964, the First BASIC Program
palegray.net notes that on this day in 1964, the first BASIC program was run. From the Wired article:"Mathematicians John G. Kemeny and Thomas E. Kurtz had been trying to make computing more accessible to their undergraduate students. One problem was that available computing languages like Fortran and Algol were so complex that you really had to be a professional to use them. BASIC is still alive and well these days, from Microsoft's VB.net to cross-platform variants like REALbasic. For the old-school among us, there's always Joshua Bell's Apple II BASIC emulator implemented in Javascript."
Wow. I'm the same age.
"Flyin' in just a sweet place,
Never been known to fail..."
The program was:
10 PRINT "HELLO WORLD"
20 GOTO 10
And it is still running to this day.
Programming a VIC-20 in BASIC...and removing all the spaces to save a few bytes. Oh yeah, those were the days! Now we have terabyte drives. The mind boggles.
12:50 - press return.
Hey slashdot try not to be too bias...VB .NET is far more complicated then BASIC. Glad to see your bash Microsoft colors are flying proud.
"...on this day in 1964, the first BASIC program was run"
Definitely "A day that will live in infamy."
Some things are best forgotten. Including (or especially) BASIC.
Ironically enough, that was the exact same program I ran in the javascript emulator only moments ago. I can only imagine how many other slashdotters did so as well.
captcha:educator, go figure.
Well, I learnt to program in fortran. Not that difficult, age 15 in 1972. Pah. Bob
I'm a little older :-(
:-) Green plastic in a cardboard sleeve.
Still, BASIC was the first language I used in CS at school in 1975. Then FORTRAN IV. Fond memories.
I still have my coveted IBM flowchart template
Perhaps I should have stolen the code for the compiler & sold it to hobbyists, who knows I might be rich now......
If I had an Ass, I'd call it Fanny Bottom, then I could slap my Ass; Fanny Bottom, on the Arse.
Damn, I'm older than I thought.
Basic? Why is the article tagged programming???
I learned BBC Basic on old Acorn Archimedies computers, I always found it very intuitive and consistant in it's structure. A great language.
BBC Basic for Windows is still going too, pretty good product though not really good for anything "serious" in my opinion. But then again, thats Basic for you.
By about 48 years. Maybe they were refering to the end and not the beginning though?
For some reason I refuse to use either spell check or the spacebar properly.
I'm not karma-whoring but since I had just checked it out, so to whoever is curious, BASIC stands for Beginner's All-purpose Symbolic Instruction Code.
w00t
...was to teach Dartmouth undergrads how to count by tens.
Or any variation of so called structured BASIC? Seems like a completely different (set of) language(s) to me, in all but name.
I am very small, utmostly microscopic.
Just because it still alive, doesn't mean it should be.
http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
BASIC is still alive and well these days
Uhmm... it may be alive, but I'm sure it has never been well...
.. but I believe that the limitations of basic taught you and me how to program and to improvise to deliver a solution.
Lets face it, the 'modern' languages are far from perfect, and you have to BE creative to provide solutions.. languages like Basic taught you that creativity, don't deny it.
This & the OP are on topic as far as I can see.
HairyBiker
You can get one of the (original?) manuals from a Bitsaver mirror site:
http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/dartmouth/BASIC_Oct64.pdf
And, their original 'hello world' program does linear algebra (page "9")
Want a sig like mine? Join ACM's SigSig today!
It is the pencil war documentation ! http://www.calormen.com/PaperandPencilSpaceCombatGame.htm We played with tanks. Awesomeness.
Beginners All purpose Symbolic Instruction Code.
There, consider yourselves enlightened.
I found that out from an article in PC format, back in the long ago.
Also, for the 'it's not a language' crowd, it *was* for those of us who were learning how to program back then. Ok, I wouldn't use it now, but I really enjoyed it in the eighties.
A learning experience is one of those things that say, 'You know that thing you just did? Don't do that.' - D. Adams
BASIC programs in you!
Maybe I am missing the point. Aren't anniversaries supposed to be on significant dates? 10 years, 20years, 50 years. Heck, I'd even accept powers of two since this is slashdot. Oh well. I will see you again next year for annual BASIC day!
Hey, it's a beautiful dream isn't it?
"BeOS is a great operating system" -Doug Miller, Microsoft
BASIC is still alive and well these days, from Microsoft's VB.net to cross-platform variants like REALbasic.
...Or, for those interested in FOSS versions (and more cross-platform
to boot), you could try
SmallBasic.
I first used it because I couldn't find any other decent interpreters for an ancient Palm, then discovered it supported just about every platform I regularly use (oddly enough, however, no official Mac build exists, though I'd imagine you could get the Linux version to build on OS X).
And now, I even keep a copy installed on any Windows machines I use... VB.Net may have a lot more power, but (at the risk of sounding elitist), who the hell wants to code in Basic if you need to go through all the trouble of creating a project and compiling? Basic excels at one task - Near-instant testing of small blocks of code, up to "toy" one-off programs. And for that, it works perfectly.
BASIC was easy and my friend even wrote a program in BASIC on his Apple IIe to help his dad's business partner keep inventory. I used it to...ummmm...do very interesting things with a Hayes SmartModem and BASIC.
...the oldtimers are still keeping the dream alive at (www.dtss.org. Tom Kurtz and others have coded up emulators for the original system software (DTSS, the Dartmouth Time Sharing System), and the site has a repository of old docs, including the Dartmouth BASIC compiler source (warning, PDF). There's a trove of historical info there on the birth of BASIC, too.
Kemeny himself was largely responsible for the revolution in computing, at least at Dartmouth, and his influence went way beyond developing BASIC. The man went from being a brilliant mathematician and computer scientist to being a brilliant mathematician/CS prof/president of the college. He saw that computing would be ubiquitous -- someday -- and issued every student a network ID. In the mid-70s. There were teletypes all over campus (in the performing arts center, even!) where everyone was invited to log on.
Sidenote, as related to me by a Dartmouth math/philosophy prof: Kemeny led the school into the era of coeducation, and expanded student enrollment by about a third when women came. Problem was, this put the college way over its housing capacity. So, being who he was, he ran a series of simulations on the mainframe to figure out how to cram 1.3n where there had previously been n students -- staggering schedules, stretching semesters, you name it. The result was the strange/unique Dartmouth program where all sophomores attend for the summer quarter, and are forced off campus/abroad during the "regular" school year. I can't help but admire the guy's approach to the knapsack problem in a different context...
Thanks for pointing that out. It takes me way back.
I learned it from my cousin and passed it along to my friends in grade school. We alternated between tanks and ships, as we felt like it.
Program something in spaghetti code today, and his noodliness will be proud!
Do your part to help fight global warming!
If you can read this, I forgot to post anonymously.
Thanks. This has been printed out and tacked to my cube wall.
When I was a wee lad, going to Kiewit during the summer and messing around with DTSS and Basic. They tore the building down a long time ago, which makes me feel even older.
They had DECwriter LA36's (like was used to print the Lions' book), old-fashioned 110 baud teletypes with paper tape readers and punches, and if you were lucky you could get some time on one of the Tektronix vector terminals. They also had some very odd GE printing terminals whose printing looked a lot better than the DECwriters. I was not even s atudent, so I had almost no disk quota. A couple of times I had to punch stuff onto paper tape to clear out some disk space. I wish I still had those paper tapes.
I learned a lot of interesting stuff, but I forgot it all when I got to MIT and started listening to Prof. Sussman.
http://www.truebasic.com/
"QBasic was a long way there already"
...
.NET is not basic
There were other Basics, BBC Basic and Sinclair BASIC are two that come to mind. Is Microsoft the same company that remade BOOLEAN as a TRISTATE value, eg TristateUseDefault, TristateTrue, TristateFalse
was: Re:VB
davecb5620@gmail.com
Physics fans may be interested to know that, according to http://www.longnow.org/views/essays/articles/ArtFeynman.php (Hillis' Physics Today essay) the only programming language Feynman was really familiar with was BASIC.
xterm -n 8
The BASIC language was designed for pedagogic purposes. Students completely new to computers could quickly get some concepts of programming with BASIC. They could test the algorithms in a fairly straight-forward manner (first make it work, then make it right, though BASIC is not fast).
Although it has never been (and should not be) a language of choice, it's educational purposes may still be there. Today we have much more powerful scripting languages like Python / Perl for getting real work done, but what about using BASIC as an example of teaching about compiler/interpreter design? There are many open-source implementations of BASIC that can be used as references and examples. Instead of coding in BASIC, coding a BASIC interpreter may be a more worthwhile training.
Colorless green Cthulhu waits dreaming furiously.
What? No mention of Freebasic? I am saddened. Maybe they should... http://www.freebasic.net/
Disclaimer: The opinions and actions of the US Gov't are in no way representative of those held by this author or its ci
I like Purebasic myself. It isn't free, but it does Windows, Mac, Amiga, and Linux.
The registration price is pretty inexpensive and there is a demo. I have used it to make some quick utilities and now I'm using it to make a game.
For my level of interest in programming it's great.
http://www.purebasic.com/
No, I don't work for them, I just like the product.
the original simple programming language and its esteemed progeny such as VB - visual bastard
The real hallmark of early BASICs was relying on line numbers.
It was a real revelation to see some Amiga BASIC code in a magazine without!
Then some recent stuff like Batari BASIC which is basically a pre-processor into 6502 ASM showed how closely it maps to ASM - in fact, given that Im surprised compiled BASICs weren't more popular especially on slow home computers back in the day!
And of course Batari BASIC showed me line #s still weren't important, just fancy labels really.
SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
10 HOME
20 SWEET
30 HOME
40 GOTO 10
Oh my god... it's full of GEEZERS!
mcgrew's razor: Never attribute to stupidity that which can be explained by greedy self-interest
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
- Edsger W. Dijkstra
"Mathematicians John G. Kemeny and Thomas E. Kurtz", was your names.
I shall incite a mob to hang ye, destroyers of beauty.
NO SIG
I remember interviewing at Shared Medical Systems, which was the Microsoft of healthcare software at the time back in 1988, and being a bit surprised that their software was written in VAX Basic. It wasn't until I got into the code that I realized just what could be accomplished using Basic and system calls. You could generate reasonably efficient, commercial grade software running on VAX VMS.
*** *** You're just jealous 'cause the voices talk to me... ***
I cut my teeth on BASIC, too, but why the celebration? Specifically, why *now*? I don't know too many people or organizations who are overly eager to celebrate the 44th anniversary above any others. Doesn't really match any nice clean milestone-like numbers (not even in binary!).
/. numerologists to find the hidden meaning of 44, like it's the first power of two plus the ultimate answer to life the universe and everything, or something like that.]
[... and cue the
09
...do they have the XCaliber code?...
I tell you, boy, nothing like a chat room session that crashed every 45 minutes.
Who am I kidding? Those crashes are probably the only reason I graduated....
Do not taunt Happy Fun Ball
without this reference.
http://c2.com/cgi/wiki?BasicConsideredHarmful
I wish I could find the original document.
putting the 'B' in LGBTQ+
I learned BASIC because that's what HP computers spoke in 1976, when my dad started bring computers home. Since I could barely read, but liked the blinking lights, I started playing around with them and he taught me how to do data entry. Outsourcing labor even then... anyway, the old HP's from the early '70's, their first actual desktop computers, had a BASIC dialect called Rocky Mountain BASIC, because it was written largely at HP's Fort Collins and Loveland, Colorado, locations. It looked much like later versions of BASIC except for its specialized hardware control stuff -- things it used to run printers and plotters.
That let me transition smoothly into the old Commodore Amiga, for which I bought an official Microsoft Basic interpreter for AmigaDOS. Still have it in its original box/packaging, somewhere -- and no shrinkwrap EULA on that MS product, either.
Nostalgia's not what it used to be.
Boolean possible values: null, true, false
Did anyone else learn BASIC on mark-sense cards ? I "discovered" computers when I was in 7th grade in 1973 in West Vancouver, BC. The compile-edit cycle was one week long. On Friday afternoons we'd take our decks up to the High School and feed them into an HP of unknown model. We'd be rewarded with a length of yellow teletype paper, and if there was a syntax error, or an incorrectly filled in bubble, you had to wait a week to run your program again.
In the 2964, the first Basic code for intelligent robots...
10: PRINT "HELLO WORLD"
20: DO
30: KILL_ALL_HUMANS
40: WHILE TRUE
50: INT I=1/0
60: END
You forgot the all-important semi-colon so that instead of a column of Hello World, you get:
Hello World Hello World Hello World Hello World Hello World Hello Worl
d Hello World Hello World Hello World Hello World Hello World Hello Wor
ld Hello World Hello World Hello World Hello World Hello World Hello Wo
rld Hello World Hello World Hello World Hello World Hello World Hello W
orld Hello World Hello World Hello World Hello World Hello World Hello
World Hello World Hello World Hello World Hello World Hello World Hello
Support Right To Repair Legislation.
actually taking an idea and developing it.
Kudos to Gates and Allen for taking the opportunity, however obvious it is to us today is wasn't so back then to others. That one step opened doors for many of us and we still have that legacy. So while some may or may not like was Microsoft became what they did was ever so important to the early days of hobbyist (soon to be home) computing.
* Winners compare their achievements to their goals, losers compare theirs to that of others.
10 PRINT "Hello World"
20 x = x +1
30 ? x
40 goto 10
and it was a complete failure...
even
10 ? "crap"
fails...
how good is this implementation?
every day http://en.wikipedia.org/wiki/Special:Random
Open Source Alternatives
I learned Algol in the 8th grade -- it was my second language, after BASIC. I had an account on a PDP-10 timesharing system.
I don't remember it being conceptually difficult. It just had the block structure syntax. Which is actually a lot easier for non-trivial programs than BASIC's spaghetti code.
44 years of minds mutilated by BASIC : )
http://en.wikiquote.org/wiki/Edsger_Dijkstra
"Not an actor, but he plays one on TV."
For those of you interested in scripting in BASIC It's worth mentioning the FreeBasic project, a cross platform Basic compiler based on the Microsoft QuickBasic dialect. It's compatible with QB script but also implements many new features for modern functionality (such as OOP). It also supports in-line Assembly, C libraries and compiles to dependency free stand-alone executables.
More information from the wikipedia article:
http://en.wikipedia.org/wiki/Freebasic
Official FreeBasic site:
http://www.freebasic.net/
. . . just what I needed on a drab Thursday afternoon! Another language flamewar on Slashdot!
Okay - so where are the Defenders of Honor for BASIC?
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
You weren't able to come up with an obituary for Albert Hoffman a few days ago and now you are trying to foist this abomination of a language onto us. This site is loosing its edge I'd say.
Je me souviens.
10 CLS .02
20 N = VAL(RIGHT$(DATE$,4)) - 1964
30 PRINT "Happy";N;"th Birthday BASIC!"
40 FOR A = 0 TO 6.28 STEP
50 X = 40 + 39*SIN(A)
60 Y = 10 + 3*COS(A)
70 LOCATE Y,X:PRINT CHR$(219)
80 IF Y > 10 THEN LOCATE Y+10,X:PRINT CHR$(219)
90 NEXT A
100 FOR Y = 10 TO 20
110 LOCATE Y,1:PRINT CHR$(219)
120 LOCATE Y,79:PRINT CHR$(219)
130 NEXT Y
140 FOR C = 1 TO N
150 X = 2+INT(76*C/(N + 1))
160 LOCATE 5,X:PRINT "O"
170 FOR Y = 6 TO 10:LOCATE Y,X:PRINT "|":NEXT Y
180 NEXT C
190 PLAY "L8C.A.F.E.D.A#L16A#L8A.F.G.L4F."
In the seventies, all the undergraduates whose computer science courses used PASCAL thought themselves to be very superior beings and looked down their noses at any hobbyist hacking away in BASIC. They would usually parrot a distorted echo of Dijkstra's famous rant, which had perhaps been conveyed to them, accurately or inaccurately, by a teaching assistant, and tell you that it was a scientific fact that BASIC rotted your brain.
So for the record it's worth noting that Dijkstra wasn't ranting against BASIC, specifically. He was ranting against anything that wasn't ALGOL or a derivative thereof, and he was equally harsh about the other major languages of the day:
"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.
APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: it creates a new generation of coding bums.
FORTRAN, 'the infantile disorder', by now nearly 20 years old, is hopelessly inadequate for whatever computer application you have in mind today: it is now too clumsy, too risky, and too expensive to use.
In the good old days physicists repeated each other's experiments, just to be sure. Today they stick to FORTRAN, so that they can share each other's programs, bugs included.
It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
"How to Do Nothing," kids activities, back in print!
Hap Pee Burthday!!!
For those who have either never used BASIC (other than VB) or have preconceived false notions about the family of langauges, check out the open source FreeBASIC compiler, from http://freebasic.net./ It supports much of the old QuickBASIC syntax, as well as a much cleaner, modern syntax that supports object-oriented programming, pointers, etc, all with the goodness of a good runtime library that has (and has always had from the early days of BASIC) a good dynamic string library.
Yes GOTO is still in the language (as it is in C where it is extremely useful in a handful of critical cases), but you won't see line number or even line labels much. Instead you get a fully structured language that's easily equal to C. FreeBASIC produces object code compatible with any C library and can leverage things like GTK.
It was kind of fun to port some of my old QB code (graphics code even) to run under FreeBASIC. FB's runtime emulates the older graphics modes (Screen 9 anyone?) on modern X11 or Windows systems. Kind of fun to run the old nibbles.bas game again, natively compiled to a linux app (console or X11... you decide).
These days, of course, I stick to Python. But rather than mixing C and Python for speed, I probably should look into writing python extensions in FB.
I fondly remember figuring Atari's particular flavor of basic back in the day. It was fun making loops that used feedback variables assigned values from STICK(0) or PADDLE(0), etc. in order to make the screen flash or do other crazy stuff. And with SOUND statements driving any of the four channels, half the fun was driving the parents nuts. (Or at least until you had to stop or risk having the power adapter taken away.)
These links pretty much cover it:
Atari BASIC: The good, The Bad, The Ugly
Atari Basic Self Instruction Guide, (c) 1979
It was probably the only language I figured out (but have since forgotten). When moving to other computers (Amiga and then PC), it was just a lot easier to use software to achieve results rather than to puzzle together some code. (Not to mention there were plenty of other distractions in J.H. and H.S.)
..We wrote a program similar the hello world program, only instead of displaying characters on the screen and repeating itself, it actually printed characters on the printer and repeated itself. Boy was the teacher pissed when it printed up a whole ream of paper!
---- "Excuse me. Where's the children's gun section?"
Imagine that syntax parser. [shudders]
Tomato wedge sperm darts that are Republican.
Way back in the old DOS 2.x/3.x when batch file programming was at best a joke and command.com only had 128 bytes (if I recall correctly) of environment space, I wrote my first "open source" program called "batch basic." The code has been long lost and may exist on a 1.2M floppy (or even a 360K floppy). It was a basic interpreter that could be used to script DOS.
Ahh those were the days.
One of the greatest things about BASIC is that the code editor is simple and the same regardless of machine. You just type the line with the line number, and it either replaces or adds that line. Then type "RUN". I was able many times to walk into department stores in the early 80's and type the same program:
10 PRINT "ERROR: Something is Badly Wrong! Don't Buy Me."
20 GOTO 10
regardless of brand. Computer brands I never saw before would succumb to such boyhood prankage, all because of the universal editing interface.
Table-ized A.I.
Hmmm, sounds trekky. Seems we need a new name.
Table-ized A.I.
The program was:10 PRINT "HELLO WORLD"20 GOTO 10And it is still running to this day.
College-Pages.com - Online Colleges, Degrees, and Programs
Here I was gearing up to defend my favourite programming language, which I've been using since the eighties, against the inevitable "BASIC sucks, use a real language like C" flames, and... there aren't any?
/. accepted BASIC as a genuine programming language? Disappointed, slashdot. Very disappointed :-)
Since when has
"HELLO WORLD", 10 PRINTS
GOTO 10, 20 DOES
Table-ized A.I.
Needless to say, it didn't translate well on a resume. "You programmed in BASIC on a mainframe on a database called 'Pick'"?
Go learn some. :-)
if( val( True ) = val( False ) )
? "Visual Basic makes perfect sense"
end
My first cool computer job involved BBx code and gourmet food. One tasted really good, the other was over processed :-)
And today, with Vista, the legacy of BASIC lives on!
Which one was it, SNAKE.BAS or GORILLAS.BAS?
Hey. I am only 23. Where is my qbasic emulator?
Often hailed as the fastest interpreted BASIC ever invented too. Boy could these guys code.
You can still get a version that runs on ARM or x86 today.
Who needs 'goto', gosub or line numbers? Not BBC BASIC.
The Beeb Team even turned away Bill Gates when he flew over to the UK to offer to sell them his crappy unsophisticated version BASIC.
They politely turned him down and showed him a working network computer system. A first for him it seems as they had to explain what a network was to him. Ah the good old days. :-)
Stuart http://stuarthalliday.com/
GW-BASIC still runs great on Windows Machines and is a free download at:
http://www.geocities.com/KindlyRat