Computers were completely different then compared to the present era computers. They were big, expensive and difficult to program. The most valuable resource was the computation time. It was at this time that the time-sharing system concept started to become popular. Such a system would "sliced up" the processor's computing time and each user is given a small amount in alternation. The machines were fast enough for most users to feel they had a single machine all to themselves. In theory, timesharing reduced the cost of computing tremendously, as a single machine could be shared among hundreds of users.
Thomas E. Kurtz was a young professor at Dartmouth College in New Hampshire who needed to program a vast array of statistical calculations, he proceeded in the SAP () assembly language. After months of trying, he admitted failure and tried the disparaged and inefficient FORTRAN. "The answers appeared" he recalled. "About five minutes of computer time were used". Since computing time was a highle vaulable resource then, the encounter with programming in High level language impressed Kurtz deeply.
Tool for novices
A programming tool for computer novices did not exist really in the early 1960s. Other high level languages such as Fortran, Cobol and Algol targeted specific fields such as science, engineering or business. Their grammatical rules were not intiutive to the liberal art students.
Kurtz and his Dartmouth colleague and Mentor, John G. Kemney ( who had worked in the Manhattan project as one of the labrers in the project's computing center, where calculations necessary for designing the atomic bomb were churned out on desktop calculators), decided to devise an easy-to-learn high level language. After the war Kermeny returned to princeton, earned his doctorate and and became Albert Einstein's research assistant at the Institue for advanced study. Einstein used to say that the real value of computers would be as they moved from being big numerical calculators to being symbolic processors. The notion made an impression on Kemeny.
A Basic Language
Kurtz and Kemeny had had experimented with a few taeching languages. Kurtz and teo students had designed a language "Scalp" for Self Contained Algol Processor. In 1962 Kermeny and another student had designed another computer language caled "DOPE" for Dartmouth Oversimplified Programming Experiment. From their own computing experience Kurtz and Kermeny agreed on eight basic principles for their new programming language BASIC which was a contraction for Beginners All-Purpose Symbolic Instruction Code.
The eight design principles of BASIC were:
- Be easy for beginners to use
- Be a general-purpose language
- Allow advanced features to be added for experts (while keeping the language simple for beginners)
- Be interactive
- Provide clear and friendly error messages
- Respond fast for small programs
- Not require an understanding of computer hardware
- Shield the user from the operating system
The language was based partly on FORTRAN II and partly on Algol 60, with additions to make it suitable for timesharing and matrix arithmetic.Program lines were numbered both because as such the flow of the program was unequivocally determined, and because it helped simplify editing (rows could be deleted just writing the line number or changed by writing a new line with the same number). The final version of what was called "Dartmouth BASIC" had 14 instructions including LET, READ, DATA, Input, GOTO, and IF THEN. To Simplify things further default formats for printing and number of decimal places for calculations were also included. Limitations were present because programs should contain only one instruction per row and every row should start with a command, but the "Dartmouth BASIC" was compiled and rather fast for that time.
The first program
BASIC was first implemented on the GE-225 mainframe which supported multiple terminals. Contrary to popular belief, it was a compiled language at the time of its introduction. Basic came to life when two programs were executed on Dartmouth's time sharing computer on May 1, 1964 at 4 a.m., bowing to the nocturnal tradition of computing.
Success of Basic
By the fall of 1964, Kurtz and Kemney began their freshman programming course. In the first semester, the course consisted of three lectures introducing students to basic. The liberal arts students embraced the style of computing offered at Dartmouth. Though not a requirement, the computer programming course was taken by 80 percent of the students.