Feeds

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:

Precise time?

Why specify the program was first run at 4AM (May 1st 1964), without specifying the time zone?

5
3

Re: Precise time?

As they were at Dartmouth college in New Hampshire, I'd guess the timezone would be UTC-5

1
1
Bronze badge
Coat

Re: Precise time?

Sure, that's the correct timezone for them, but did they have daylight saving time in New Hampshire then? The 'Uniform Time Act' wasn't passed until 1966...

2
0
Silver badge

Re: Precise time?

I suspect to demonstrate it was a late-night, pizza-fuelled experiment.

6
0
Childcatcher

Precise Time

4AM?

Yeah thanks guys for setting a precedent that everyone from Steve Jobs to even the most sedate and boring sysadmin now expects programmers (and fixers) to be available all bloody night.

Example: Work 60 hours plus on a failing network in Birmingham. Take a well-earned break for a couple of days back home 200 miles away, drive early on Sunday morning to see the kids for once. Halfway home get a call to say something else has gone wrong, "and if you don't come back right now, don't bother coming back at all".

Such happy days.

Still, I love my job, innit.

7
0
Silver badge
Trollface

Re: Precise Time

"and if you don't come back right now, don't bother coming back at all"

Not even taking the foot off the gas pedal

8
0

Re: Precise time?

Go to the Reg homepage and check the publish time on the article, you clever lad, you.

0
0
IT Angle

The way we were

{sniff} you never forget your first.

4
0

C

C was (I really should say is) not more sophisticated than BASIC. It was actually considerably less sophisticated.

That's why it was so useful.

8
0
Silver badge

Re: C

I think C was created to be just "one step from the metal" for writing OS in a moderately portable way. However you might complain about the dangers of C, it sure beats assembly!

11
1

Re: C

As a former assembler programmer including PIC, Z80, 6502, 65010, 680x0 and MIPS, I don't think I would ever describe any variant of C as being "one step away from the metal". The concepts, even in K&R C and ANSI C are abstracted by many degrees from assembler.

14
0
Anonymous Coward

Re: C

Perhaps the best way to put it is that C is as close to the metal as possible while being portable between architectures (including really weird architectures that you only find in museums today).

9
0
(Written by Reg staff) Silver badge

Re: Re: C

A friend describes it thus: "C is assembly language with syntactic sugar."

C.

6
0
Silver badge

Re: C

My point was you can do things in C with ease, such as bit-wise operations, pointer arithmetic, etc, that can be seriously dangerous, but is also essential for some OS operations. Same in that respect as assembly, and not as other languages that (for good reason) deny dangerous operations.

0
0
Silver badge
FAIL

Re: C

Oh dear, that reads as if "bit-wise operations" are dangerous! Doh!

1
0
Bronze badge
Thumb Up

Re: C

Real Programmers program in Assembly.

3
0
Bronze badge

Re: C

FOR x= 1 TO 50

PRINT "Happy Birthday Basic!"

NEXT X

1
0
Bronze badge

Re: C

"Real Programmers program in Assembly." no Fortran and they never use Pascal - pbm.com/~lindahl/real.programmers.html

0
0
Bronze badge
Pint

Re: C

Real Programmers program in machine hex code directly (*); mnemonics and assemblers are for wussies.

(* Seriously. Been there, done that. 6809 circa 1980.)

3
0
Anonymous Coward

Re: C

FOR x= 1 TO 50

PRINT "Happy Birthday Basic!"

NEXT X

You have a lower case 'x' in the FOR statement, and an upper case 'X' in the NEXT statement.

BASIC is (still) an acronym and should be all upper case.

1
1
Silver badge
Holmes

Re: C

I believe C is best described thusly:

"It combines the power and flexibility of assembly with the readability and ease-of-use of assembly."

4
1
Silver badge

Re: C

(* Seriously. Been there, done that. 6809 circa 1980.)

Oh, yeah, you and your fancy-pants index register with the arithmetic operations. When I was a lad, we had INX and DEX and were glad of it!

(6802, and we built the Data General Dasher D200 around it in 1978).

// Good times.

// We would have built a Pac-Man game into it if we had had enough spare RAM...one of my regrets.

1
0
Bronze badge

Re: C

Real programmers enter programs in binary using front panel toggle switches to set address and data.

Set address, hit EXAMINE, set data, hit DEPOSIT.

8
0
Gold badge
Devil

Re: C

Real programmers do it at 4am, hyper on pizza and coffee. Then press commit, and run away.

0
0

Re: C

Hope you remembered to set EA. You lifted the DEPOSIT, hitting it just snapped the key off.

Phil.

0
0
Pint

Re: C

I'm with you.

IBM 1320, hex coding, no CRT. Instead, a panel of lights, displaying hex.

8K of core (magnetic donuts on cross wires).

We were nuts: analyzing video data on that machine.

0
0

Re: C

Sorry, got my models all backwards, it was an IBM 1130.

1
0
Silver badge

Re: C

>A friend describes it thus: "C is assembly language with syntactic sugar."

The other one is "C is portable assembler"

Like many of these cute phrases, it is wildly inaccurate.

Some does depend on what C you're talking about. K&R C was not much more than assemler in some ways, but ANSI-C is a different beast.

2
0

Re: C

One of my first thoughts when I saw C bit-shifting primitives was "OK, so how do I control/see the carry bit?" I also came from an assembler background (6502, 680x0, some ARM and x86 - yuck!) before being introduced to my first C compiler.

To an assembler programmer, C misses out a few pieces. But it's reasonably close to the metal, even if you might want to use a few routines written in assembler (i.e. interrupt handlers) for best results. It certainly beats writing an operating system in Pascal (yes, Apple, I'm looking at you!)

0
0

Re: C

my way of seeing if the carry flag is set is based on an observation that if((a + b) < a) then overflow has occurred and therefore the condition denoted by the carry flag is true.

0
0

This post has been deleted by its author

Anonymous Coward

Re: C

Bah humbug.

All we had was a one-single NAND gate made from vacuum tubes, and some troughs filled with mercury (delay lines). Turing-complete me sons, Turing-complete.

0
0
Bronze badge
Pint

Re: C

"Set address, hit EXAMINE, set data, hit DEPOSIT."

How about them 'VERB' and 'NOUN' buttons from the Apollo Guidance computer's DSKY?

For those that haven't seen it, there's some really interesting videos on the net about the design and build of the Apollo Guidance Computer. Really nice.

0
0
Bronze badge

Re: C

>To an assembler programmer, C misses out a few pieces.

You can say that! Having worked in x86 ASM up to 286/386, I moved across to C (which I found very easy although frustrating to debug as the point at which the compiler gave up with a generic "missing semi-colon in line nn" was often many lines after the actual error which was nothing to do with end of line semi-colons.) and wrote the x86 assembler for a C programmers workbench. Things which standard C didn't handle were segmentation and all those lovely op-codes that Intel provided to support operating system activities (and which it seems even today aren't fully exploited by modern x86 based OS's); but then writing an efficient code generator was difficult enough as it was.

0
0

Re: C

re: (* Seriously. Been there, done that. 6809 circa 1980.)

I've done something like that. 6809 on a Tandy CoCo3, early 1990s. I had bought an assembly-language tutorial book at Radio Shack, but was unable to get EDTASM, which it was written for. Luckily, the book had a table of opcodes, as well as object code printouts in all its code examples, so I taught myself how to hand-assemble.

I did all that to try to get some resemblance of speed out of the CoCo3's "hi-res" graphics modes (a whopping 320x200 in 16 colors). The stock HGET and HPUT blitter commands were way too slow (which is what happens when the original programmers' properly "structured" program calls 3 subroutines for each byte it's copying to the frame buffer). I also added transparency and horizontal & vertical flipping. And tile-based backgrounds. And double-buffering. I never actually did built the game I wanted to make; I had more fun building the tools. (for certain definitions of "fun".)

0
0

Ah..

I remember how easy it was to teach my classmates to write a 'wait till lessons start and then beep continuously' script for the Micros sat in the class corner / corridor / teacher's office (stock room).

Unfortunately that got stopped when the same kids started putting rude messages on the screen - it was not longer a computer fault but an obvious prank.

1
1

BASIC is under-appreciated

There's the famous quote about how BASIC ruins programmers.

Personally, I think it probably brought more people to IT than any other programming language ever has.

Almost everyone I know in IT "of a certain age" used BASIC as a kid. Whether they're now a developer, a systems administrator, an architect, a hardware engineer or a support engineer. (Or whatever other IT roles we can think of.)

And through things like VBA, BASIC continues to be very much alive despite a plethora of newer options.

Maybe, over the next few decades, Python or Javascript will eventually supercede it. But it'll take one heck of a lot of work, and we'd lose BASIC. And deep down, I don't think people working in the industry actually want that...

12
0

Re: BASIC is under-appreciated

I learned BASIC on a BBC Model B, and taught myself about subroutines, loops, control etc. I don't recall using data structures, but the other concepts are, if not universal, certainly widely applicable.

4
0
Anonymous Coward

Re: BASIC is under-appreciated

Mark #255 "data structures" in BASIC

One can emulate slightly more-advanced data structures, e.g. doubly linked lists, or just about anything else, within BASIC's simpler data structures (e.g. string arrays). It's a neat trick that not many people seem to know about.

0
0
Bronze badge

Re: BASIC is under-appreciated

REPEAT:PRINT "Happy birthday BASIC":UNTIL FALSE

0
0
TRT
Silver badge

"ran the first successful BASIC program on May 1 at 4am."

And thus was founded the pattern of Burning At Several Instances of the Candle programming that lasted the next three decades. Hats off to the gentlemen, please! Many a time I stayed up all night to get some code working right.

2
0

Interpreter

So what date was the first BASIC interpreter fired up? And how does that compare with the first interpreted language? I only ask because Sinclair Basic was unbelievably easier than compiled COBOL on punch cards, or FORTRAN on paper tape. Reducing the edit-run-fail cycle to seconds from days changed everything.

1
0
Bronze badge

I was spared 8 bit

I started with BASIC on 16 bit DG Nova and DEC PDPs, it looked quite good after using FORTRAN. Now after learning C and SQL, I can still write FORTRAN code in most languages.

BASIC was really useful and inexpensive way to implement instrument and machine control - A few lines in QuickBASIC allowed you to open a serial line and write its output into a file, and send an input back. I know that some power and utility company applications are still out there running this code under DOS.

0
0
Silver badge

"create a BASIC interpreter "

Actually they didn't. They (BIll Gates and mostly Paul Allen) simply ported Dartmouth BASIC.

1
0

Re: "create a BASIC interpreter "

I think it was substantially more than a simple port, beyond the first incarnations anyway. The Dartmouth MAT statements for matrix manipulation never made it to the MS interpreter and a few things that were useful for the microprocessors of the day such as the PEEK and POKE instructions came in.

Dartmouth BASIC on punch cards was great - you could actually shuffle your card deck before reading it in and it ran just fine thanks to the line numbers - eat your hearts out FORTRAN/COBOL/C coders!

3
0
Silver badge

Re: "create a BASIC interpreter "

It's probably worth mentioning that Gates and Allen developed their port using stolen time on a PDP11.

Thus showing that nothing is new under the sun.

2
1

Re: "create a BASIC interpreter "

>It's probably worth mentioning that Gates and Allen developed their port using stolen time on a PDP11.

Actually, it was a DECsystem-10.

Phil.

2
0
Silver badge

Re: "create a BASIC interpreter "

> Actually they didn't. They (BIll Gates and mostly Paul Allen) simply ported Dartmouth BASIC.

It has been claimed that MITS BASIC was a port of a public domain BASIC interpreter that ran on the DEC-10 and for which the source code was available. Certainly it used DEC style syntax. All 8080 development at the time was done on DEC machines until CP/M became available. The 8080 cross compilers were somewhat compatible with DEC-10 assembler so it would not have been difficult to port though the floating-point was quite different, which is why they needed Monte.

http://www.vanwensveen.nl/rants/microsoft/IhateMS_1.html

0
0
Go

I remember coding in Locomotive BASIC on the Amstrad CPC 464. It was great, and I also learnt how to use GW-Basic and QBasic.

As I learnt a lot about programming with this simple language, I decided used that idea 25 years later to teach students at college how to program, but by using Python. Apart from the for loop, Python was a really good way to teach programming for absolute beginners.

2
0
Bronze badge
Happy

Bring Back Basic

"I remember coding in Locomotive BASIC on the Amstrad CPC 464"

Me, too. Surprisingly, it was a lot of fun. :-)

1
0

Page:

This topic is closed for new posts.