Kemeny & Kurtz - The Invention Of BASIC

techElder

Well-known member
So, I missed it again this year, but February 22 is called the beginning of the BASIC language.

... Is there another language that can claim to have done more to change the way we use computers? You may not like it, but it was the language that brought computing to the masses....
... But to understand this argument you need to know about Kemeny and Kurtz the true inventors of Basic and, eventually, the inventors of True Basic....
The "rest of the story" is at this link: http://www.i-programmer.info/history/people/739-kemeny-a-kurtz.html
 

stan74

Senior Member
I heard the word BASIC came later as an after thought. Like, err,what shall we call it? Why is c called c or pascal,pascal. Same instructions for,do,if,while? basic was never used where ever real computers were,it was cobol or cpm or other. I'd never heard of basic until the zx80 came out here and the tandy trs80. I bloke working for sir clive started the jupiter ace spectrum clone that used forth and was compiled but they sold <1000 whereas sinclair sold over >1000000 spectrums.
"where would we be today if not for basic?" where we are today where c++ is the main programming language. Is basic taught anymore and don't know if it was ever used in the UK in schools.
 

hippy

Technical Support
Staff member
C evolved from B, which evolved from BCPL. Pascal is a homage to Blaise Pascal which later evolved into Ada, a homage to Ada Lovelace.

There are a number of family trees of programming languages on the web, including -

https://javaanywhere.files.wordpress.com/2012/10/20121026-020433.jpg

That only goes up to 2000 so doesn't include Python and more recent developments.

Cobol had a call subroutine until a condition was met capability allowing for "perform sex until exhausted" to be a valid command and providing newbies a giggle.
 

stan74

Senior Member
I've used Delphi because it's compiled and it was like VB really. Forth is totally bonkers. I heard it was for tracking telescopes and it should have stayed there. Wasn't basic capable of that or wasn't it open source cos bill gates invented it :)
 

BESQUEUT

Senior Member
Remember this hippy? https://rosettacode.org/wiki/Bitmap/Bresenham's_line_algorithm Interesting how the algo is implemented in different languages. Which is the easiest to read depends on what you've used but if you hadn't used any, which looks simplest?
Readability does not depend on languages but on writers...

For example compare the BASIC, freeBASIC and pureBASIC codes...

And what to think about the Mathematica / Wolfram Language ?
 
Last edited:

hippy

Technical Support
Staff member
The problem with that page is it doesn't appear to be exactly the same program / algorithm implemented in different languages so it is hard to compare language style and readability.

If I were asked to pull one out of that page on what looked the simplest to port to some other language I'd probably say the JavaScript version.

Most modern high-level procedural languages can have the same simplicity, clean style and readability so there should not be much in it. The real test would be to take what one considers to be the simplest, translate directly to the other languages, then see how much clarity or simplicity has been lost.
 

Dartmoor

Member
My education in computer programming consisted of writing down the calculations I wanted to do on a special card.
The card went to the Town Hall where it was converted to a punch card & fed into the computer, then the reverse process with the outputs.
In the following week's lesson we got the results back!
I wonder why I need to use the flowchart to program in PE6? :)
 

stan74

Senior Member
This is why I stick with basic basic and why qbasic and free basic use code that looks like c++ or this java which I don't get. For what=what to what..next when,where,how. There's a bigger list with sinclair basic and it's all done with strings. I seem to remember everything was done with strings then converted to numbers. BBC basic was tidy but the computer cost as much as a bungalow.
I bought an arduino uno a week ago so might try the c+ thing that goes with it but starting a program with void isn't encouraging.
Code:
for (;;) {
                plot(g, x1, y1);
                if (x1 == x2)
                    break;
                x1 += ix;
                d += dy2;
                if (d > dx) { ------- this bit makes sense :)
                    y1 += iy; 
                    d -= dx2;
 
Last edited by a moderator:

Buzby

Senior Member
My education in computer programming consisted of writing down the calculations I wanted to do on a special card.
The card went to the Town Hall where it was converted to a punch card & fed into the computer, then the reverse process with the outputs.
In the following week's lesson we got the results back!
That was exactly how my school taught me programming, in FORTRAN.

We had a hand punch, sent the cards to the Borough Treasurers on Tuesday, got the printout results the following Tuesday, when we discovered what simple syntax error we had made, which meant no results !.

Which school was it ?.

Cheers,

Buzby
 

erco

Senior Member
My education in computer programming consisted of writing down the calculations I wanted to do on a special card.
The card went to the Town Hall where it was converted to a punch card & fed into the computer, then the reverse process with the outputs.
In the following week's lesson we got the results back!
Virginia Tech, 1978, FORTRAN 101 class: We punched our own IBM cards then handed in the deck for someone else to inspect and run for us. Got our printouts back 2 days later on that big tractor-feed green/white striped fan-fold paper. They wouldn't let us noobs run our own decks ever since someone got into a dreaded 'paper advance loop', which apparently shot a noisy, parabolic arc of paper across the room, sending people ducking for cover until the paper ran out.
 

techElder

Well-known member
They wouldn't let us noobs run our own decks ever since someone got into a dreaded 'paper advance loop', which apparently shot a noisy, parabolic arc of paper across the room, sending people ducking for cover until the paper ran out.
So, erco, how did you calculate the parabolic path of that paper in FORTRAN?
 

stan74

Senior Member
My wife worked in the job department of Cardiff Uni loading punched cards into a machine and the students got the results days later. 1972. I think they got a zx81 then.
 

westaust55

Moderator
[reminisce]
As I recall, in 1972 I was introduced to both BASIC and FORTRAN 4.
BASIC was on a single user PDP11 with Interpreter on papertape into high speed reader/loader on front of computer after first loading a bootstrap loader using the switches on the front of the PDP 11 (roughly the size of a medium sized domestic refrigerator.)
Thereafter enter programs with a teletype machine and could save the BASIC programs to paper tape and reload but much slower.
COBAL at that time was deemed to be for the commercial/accounting fields.

FORTRAN 4 was on a CYBER72 via punch cards. Write code onto sheets and computer centre ladies typed in to create the punchcard sets.
Then check the punchcards were correct and manually fix one with manual card puch if something was wrong. Then hand over the punchcards and come back around 2 hours later for the A3 fanfold paper printout.
I also managed to work out how with the aid of an "illegal" punchcard to divert control to use a cable link to another computing centre and use the SPICE simulation software there to analyse my circuits. If the computer centres found my extra card it was destroyed but easy to manually create another and try again.

There was a ditty for the ladies who operated the high speed punch card entry machines to produce the program packs:
"To please the she's who punch the keys
Please distinguish between these
O and 0 (slash through the zero), I and 1"

In 1974 over many months I read the Electronics Australia magazine series of articles about the EDUC-8 (pronounced "Educate") which was a kit built computer based on TTL logic IC's.
Recall it was designed with 64 bytes if memory but due to crashing memory prices was upgraded to 256 bytes. Never built one of those.

Late 1974 I started in microcomputer chips first with a National Semiconductors SC/PM (referred to as "SCAMP") with "home brew" computer.
Believe around 256 or 512 bytes of RAM, no ROM and program and data entry via switches on front of the box and output via row of LEDs.
Coding in Assembler.

About 1976 moved to a Motorola MC6800. Built up to 8.5 kbytes of RAM, few kbytes of EEPROM for stored programmes and key routines.
Built own EEPROM programmer. kit built Hex and kit built ASCII keypad added.
Hex display initially but by 1978 built from a kit intended for retail stores to put text on a TV as store window advertising and used that to output video to a 8" green screen monitor (ex a TV station) with 30 MHz bandwidth so crystal clear even though small screen.
That computer ran assembler and 4K integer only BASIC plus word processor in 2 kBytes. Eventually burnt the assembler, BASIC and WP into EEPROM (2708's) for rapid startup.

By 1980 was onto first commercial computer with an OHIO Scientific Industries (OSI) C2-4P computer which was also heavily modified Capable of 16 colours 72 characters per BASIC line but display was32 lines of 64 characters so lines wrapped if more than 64 per line.
The home brew modes featured there was added 128 x 128 graphics resolution and using a Votrax SC-01 speed synthesis chip which with assembler driver spliced into the modified BASIC (by then in EEPROM) ave very good quality speech that could talk using interrupts while BASIC also continued with other code.

Thereafter from mid 1980's something of a hiatus (a lot of work away from home in remote/distant regions countries) from computer building and mods using C64 and Amiga 2500 then std PC's for a couple of decades before in 2008 I started with PICAXE and back into electronics in general.

I did along the way dabble on home scene with FORTH, PASCAL and even learnt FORTRAN with 77, but BASIC and assembler were still the primary programming methods.

[/reminisce]
 

lbenson

Senior Member
You had "keypunch ladies"?

In my day (1970, FORTRAN 4), we punched our own cards, and when errors came back, made corrections on a duplicator card punch--press the duplicate key until you get to the error, then type the (hopefully) correct code. One-day turn-around, later improved to twice a day (woohoo).

Another fun thing was wiring the card sorter (by moving jumper cables) so that you could sort cards other than by the standard numbers (columns 73-80 as I recall--used so that if you dropped the deck, you could run the cards through the sorter to re-assemble the program).

Computer graphics consisted of copies of the Mona Lisa on 17-inch green-white paper made in (virtual) shades of gray by overprinting.

1979 for my first working z80 computer with 8K RAM and double 8" floppies in a nice self-made wooden box with Heathkit monitor. As one of the more tech-savvy guys at my workplace said, "What would anyone ever do with a toy like that?" (Learn to program in C, for instance.)

When I first looked at Pascal you couldn't even write to a file with it. Not for me, I thought, and I never looked further.
 
Last edited:

Dartmoor

Member
That was exactly how my school taught me programming, in FORTRAN.

We had a hand punch, sent the cards to the Borough Treasurers on Tuesday, got the printout results the following Tuesday, when we discovered what simple syntax error we had made, which meant no results !.

Which school was it ?.

Cheers,

Buzby
Bournemouth (Hants) UK.
That was followed by being taught how to design magnetic core storage as computer memory at college.
I see Ohio mentioned in post #17 - my first "PC" was a UK101 (UK version of Ohio Superboard) built from a kit in 1979 (I wonder if it still works?).
Post #18 - ibenson, you were posh printing Mona Lisa? I recall everyone printing Micky Mouse using X /\ O etc! In my case on a 1930's teleprinter because I could not afford £300+ for a daisywheel.

My first attempt at programming in BASIC taught me a lot. I wrote a game which invlolved flying an airplane around the screen. I accidentally went off the screen and kept going to see what happened, which resulted in a crash - literally. The error message said "error in line 1234". When I scolled down I saw a gap in the middle of the code with an aircraft parked in line 1234! That gave me quick lesson about how PEEK & POKE commands work!
As they say, nostalga ain't what it used to be!
 

lbenson

Senior Member
you were posh printing Mona Lisa
Wasn't me, but my supervisor at my $2.50 an hour halftime job, who had no interest in doing his work (statistics on Massachusetts blood banks)--just in "computer graphics". I went from 0 (no schooling in computers, no math since high school) to productive in about a month. And you could almost live on $50 a week--$100 a month for rent, $5 a month for a new shirt, the rest for fuel and food.
 

BESQUEUT

Senior Member
My first BASIC computer whas that
Not realy 16 bits, but 4 x 4 bits processors...
and no need for Bresenham algorithm as it draw lines with really no pixels...
There where also a real HardCopy Printer...
 
Last edited:

Technoman

Senior Member
Like westaust55, my first microcomputer chip was too a National Semiconductors SC/MP in 1977, with 512 bytes of RAM, no ROM and program and data entry via a 16 keys keyboard and a not so reliable cassette tape recorder. Coding was in hex, manual in hand. Program could be wiped out at first run... Then Z80 (TRS 80), 6800, 6809, 68000, 8051 and ... PIC.

The SC/MP could be considered as a minimalist microcontroller as it has several inputs (2) and outputs (3), and a serial input/output. I remember having a program sending and receiving via an interface to a teleprinter. You just had to load a register and shift its content at the fixed baud rate ; MSB and LSB were externally connected to SIN/SOUT. And the amazing instruction XPPC (exchange pointer register with program counter) to call a subroutine...
 

manuka

Senior Member
Kiwi corner: Bah to '60s-70s punched cards & paper tape, L-O-N-G turn arounds & agonising programming !
I too endured that era (finding the lack of FEEDBACK for ones punching efforts particularly frustrating),& lapped up the '80-'90s desktop micro developments.

We should applaud the marvellous merits of "ACTUALLY-DOING-SOMETHING" mid-late '90s Parallax BASIC Stamps. Although $$-$$$ costly, these surely were the first high level (pBASIC) programmable devices that allowed easy hardware control.

My tech students at the time lapped them up for all manner of applications. I recall one saying he'd done more in half an hour with a BS2 than he'd managed previously in half a month with a Z80!

The subsequent single chip PICAXE arrival (~2002),at prices a near order of magnitude cheaper, spelt the BS death knell for most cash strapped local users. To their credit it seems Parallax however is still marketing BSs,perhaps to well funded US institutions who've developed training programs around them.
Stan.
 

Jeff Haas

Senior Member
The Basic Stamp is still available, and Parallax also launched their own 8-core microcontroller, the Propeller, about ten years ago. Designed completely by one man! And he's nearing the finish of the sequel, the Propeller 2.
 

edmunds

Senior Member
Thank you, guys, this thread is a great read with excellent links and references for further education :). I started my computer ventures with 386x [or, wherever the x had to go] which would have been alien technology at the time some of you first touched a computer-like being. So a very exciting history first hand for me here.


Cheers,

Edmunds
 

premelec

Senior Member
i first tried a micro in 1978 [never had access to Hollerith card machines] - a ONE BIT Micro from Motorola something like a MC15000 but I can't find description... then on to Sinclair Kit, built ZX81 [doubled the memory to 2K] and VIC20 C64 C128 XT [10MegB hard drive on card!] etc IBM and Basic Stamps and PICAXE. Magazine SoftStrip programs and hand entries from popular mags... Ah the good old daze. No more programs on cassette tapes... might be fun to run MP3 programs ;-0 When I moved to Colorado and visited IBM there were ladies embroidering core memory panels - that went on almost till 1970s - the core panels are pretty... we worked very hard for memory then... now I just bought a 128GB stick for $20. Onward!
 

julianE

Senior Member
When I moved to Colorado and visited IBM there were ladies embroidering core memory panels - that went on almost till 1970s - the core panels are pretty... we worked very hard for memory then...
I saw core memory as late as 1985, still running. From what I remember it was very reliable. I dealt with a lot of 5 9s (99.999% up time) systems, though my experience was even better, zero downtime for years at a time. When I last mentioned 5 9s to younger people they had no clue what I meant. I think 4 9s is considered excellent now and some joke of 9 5s. Computer down time has become acceptable, even though everything is cheaper and faster some of the poetry is gone. I'm a little younger then some of the posters on this thread but I envy the earlier generations. I have friends that programmed on IBM machines back in the 60s and they speak fondly of those times. When I first saw core memory, I have to agree with premelec, it was pretty.
 

premelec

Senior Member
Of Core-s

I've attached a picture [I hope] of a small core plane without the necessary driver transistors etc... Quite a lot of peripheral electronics per bit are required... however planes of 10s of thousands of ferrite cores were strung - I hope eventually someone made a machine for this laborious work.

That's the one; Motorola MC14500... for controlling traffic lights etc...

I have a couple of excellent wood abacuses and a collection of slide rules... [one 8" diameter spiral scale circular good to 5 digits] - it's great what we have done trying to understand and deal with our world in numbers... ;-0
 

Attachments

rq3

Senior Member
I've attached a picture [I hope] of a small core plane without the necessary driver transistors etc... Quite a lot of peripheral electronics per bit are required... however planes of 10s of thousands of ferrite cores were strung - I hope eventually someone made a machine for this laborious work.

That's the one; Motorola MC14500... for controlling traffic lights etc...

I have a couple of excellent wood abacuses and a collection of slide rules... [one 8" diameter spiral scale circular good to 5 digits] - it's great what we have done trying to understand and deal with our world in numbers... ;-0
I have a recollection from the late 1960's of visiting the IBM facility in Vermont. There was a room roughly the size of a gymnasium, with hundreds of women peering through binocular microscopes. They were threading the hair fine wires through the almost microscopic ferrite cores for a 4K memory card. The finished card was roughly the size of my hand. And that was 4000 bits, not bytes or words.

Just today I got new batteries for my HP-35 and HP-67 calculators. Yaaah! The card reader still works, though I don't have to worry about batteries on my math grenade (Curta calculator), which beats my slide rule hands down (except for logarithms).

Somewhere I saw a modification called the "Curta 2000", something like a stepper driven Curta. Picaxe anyone? A microprocessor driven mechanical calculator?
 

techElder

Well-known member
The core memory was quite involved electronically. It depended on detecting the change from one state to the other. There were no Hall effect gadgets.
 

rq3

Senior Member
Don't make me bust out my Friden calculator!

That is beautiful, BUT...it requires a power cord. The beauty of the Curta is that it is strictly mechanical, and can be held in one hand.

The daughter of one of my colleagues is currently doing arithmetic in school, and I introduced her to "9's complement" math, just as a mechanical calculator does subtraction. You could see the light bulb turn on when she realized what all the "carry this, and carry that" was about.

Perhaps every student should receive a Curta as part of the curriculum. It really makes you understand what it is you are trying to do, and the inter-relationship between basic arithmetical functions. At least it did for this young lady, who had no previous interest in math at all.

One of my early grade school teachers expressed concern to my parents that I was always staring at the classroom clock during exams, yet excelled at arithmetic. My parents returned from a conference with the teacher and questioned me about it. I remember my response was something like, "What else is the clock for, other than to tell time? It's obviously good for more than that"!

In first grade, we were introduced to math using a "number line", and when that crutch was taken away, I quickly taught myself to use the classroom clock to do fairly advanced things, in base 12 with conversion to base 10, using that source. Kids will be kids, and I had the benefit of teachers who didn't directly question the methods I had taught myself.

Or was it a benefit? Perhaps the teachers might have learned something from a 6 year old?
 

julianE

Senior Member
I never heard of a Curta calculator, after reading the wikipedia article I would love to have one, I did a quick ebay search and it's rather pricey though the level of precision justifies the cost. Thanks for sharing. I like hearing smart phone people talking of amazing tolerances of their products, though very laudable it's not something that Apple et. al. invented. I have a camera with a rangefinder so precise that the tolerances are in angstroms and it's 1990's technology. I read that some people take apart the Curta and then it's next to impossible to reverse the process it's so precise that it needs special tools to hold various parts. In the days when I was flush I would buy a Curta in a heartbeat.
 

rq3

Senior Member
I never heard of a Curta calculator, after reading the wikipedia article I would love to have one, I did a quick ebay search and it's rather pricey though the level of precision justifies the cost. Thanks for sharing. I like hearing smart phone people talking of amazing tolerances of their products, though very laudable it's not something that Apple et. al. invented. I have a camera with a rangefinder so precise that the tolerances are in angstroms and it's 1990's technology. I read that some people take apart the Curta and then it's next to impossible to reverse the process it's so precise that it needs special tools to hold various parts. In the days when I was flush I would buy a Curta in a heartbeat.
Taking a Curta apart is really easy. Putting it back together is another thing! The parts are interchangeable, with the exception of the oilite bushings at the bottom of the selector helices, which were apparently lapped by hand to micrometric tolerances. Any good watchmaker who pays attention to detail could fix one. In any case, mine was made somewhere around 1950, and still works perfectly after decades of pretty intensive use. But, I don't think I'll go for the "Curta 2000" mod, since the machine relies on human feel for operation (zero position and inter-locks).

You can find these on occasion in second hand stores for a dollar or two. Most people don't know what they are, and they are sold as paper-weights.

Mine is a Type 1, inherited from my civil engineer grandfather, and I would like to have a Type II, but darned if I'll pay Ebay prices for 15 digits of precision!

I'd rather buy a Picaxe, and do some code!
 

premelec

Senior Member
Yep I had a Curta my father gave me and I used procedures I'd learned on a Friden crank and carriage shift... I donated it to local University for engineering display case of various devices... A well oiled machine - just keep the sand away from it!
 

stan74

Senior Member
The core memory was quite involved electronically. It depended on detecting the change from one state to the other. There were no Hall effect gadgets.
Before cores they used a bath of mercury with a speaker one end and a microphone the other..so I heard.
 
Top