FACTOID # 20: Statistically, Delaware bears more cost of the US Military than any other state.
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 


FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:



(* = Graphable)



Encyclopedia > Dartmouth BASIC

Dartmouth BASIC is the original version of the BASIC programming language. It is so named because it was designed and implemented at Dartmouth College. The language was designed by John Kemeny and Thomas Kurtz as part of the Dartmouth Time Sharing System (DTSS) and was the one of the first programming languages intended to be used interactively. BASIC is a family of high-level programming languages. ... For other uses of the name Dartmouth, see Dartmouth Dartmouth College is a private university in Hanover, New Hampshire, and a member of the Ivy League. ... John George Kemeny (Kemény János) (May 31, 1926–December 26, 1992), U.S. computer scientist and educator best known for co-developing the BASIC programming language in 1964 with Thomas Eugene Kurtz. ... Thomas Eugene Kurtz (born 1928), U.S. computer scientist; co-developed the BASIC programming language in 1963/64, together with John George Kemeny. ... The Dartmouth Timesharing System, or DTSS for short, was the first large-scale time-sharing system to be implemented successfully. ...

Several versions were produced over the years, all implemented as compilers by undergraduate teams working under the direction of the designers. The very first version was produced before the time-sharing system was ready. Known as CardBASIC, it was intended for the standard card-reader based batch processing system. The first interactive version was made available to general users in June, 1964; the second in October, 1964; the third in 1966; the fourth in 1969; the fifth in 1970; the sixth in 1971; and the seventh in 1979.

The first interactive version implemented the following statement types, taking some of its operators and keywords from FORTRAN II and some from ALGOL 60. Fortran (also FORTRAN) is a statically typed, compiled imperative computer programming language originally developed in the 1950s and still heavily used for scientific computing and numerical computation half a century later. ... The position of Algol Algol (β Per / Beta Persei) is a bright star in the constellation Perseus. ...


Development history

Work on the compiler and the operating system was done concurrently and so the first BASIC programs were run in batch mode as part of the development process during early 1964. However on May 1, 1964 at 4 am, John Kemeny and John McGeachie ran the first BASIC programs to be executed successfully from terminals by the DTSS system. It is not completely clear what the first programs were. However the programs either consisted of the single line: Batch processing is the sequential execution of a series of programs (jobs) on a computer. ... May 1 is the 121st day of the year in the Gregorian calendar (122nd in leap years). ... 1964 was a leap year starting on Wednesday (link will take you to calendar). ...

 PRINT 2 + 2 

or were implementations of the Sieve of Eratosthenes according to a 1974 interview in which John Kemeny and John McGeachie took part. In mathematics, the Sieve of Eratosthenes is a simple, ancient algorithm for finding all prime numbers up to a specified integer. ... 1974 is a common year starting on Tuesday (click on link for calendar). ...

The second version of BASIC only made minimal changes, adding the semicolon operator to the PRINT statement and zero subscripts to arrays.

For the third version, the INPUT statement was introduced along with the powerful MAT statements for matrix manipulation and the RESTORE statement for use with READ/DATA. Development continued with the introduction of text manipulation and variables, also known as string variables, for version 4 and true file handling in version 5. Version 6 saw the introduction of separately compilable procedures with parameters; this is the version from which most later BASIC dialects descend. In 1976, Steve Garland added structured programming features to create Dartmouth SBASIC, a precompiler which produced version 6 output (and which formed the basis of ANSI BASIC). In 1979 Kemeny and Kurtz released an ANSI BASIC compiler as the seventh and final version of BASIC at Dartmouth before leaving the college to concentrate on the further development of ANSI BASIC in the form of True BASIC. Structured programming can be seen as a subset or subdiscipline of procedural programming, one of the major programming paradigms. ... True BASIC is a fully structured variant of the BASIC programming language descended from Dartmouth BASIC – the original BASIC – invented by college professors John G. Kemeny and Thomas E. Kurtz. ...

User interface

DTSS implemented an early integrated development environment (IDE): an interactive command line interface. There was no need to log out. If users did not respond, they were logged out after a short delay. An integrated development environment (IDE) (also known as an integrated design environment and integrated debugging environment) is computer software to help computer programmers develop software. ... Rxvt is a VT102 terminal emulator A command line interface or CLI is a method of interacting with a computer by giving it lines of textual commands (that is, a sequence of characters) either from keyboard input or from a script. ...

Any line typed in by the user, and beginning with a line number, was added to the program, replacing any previously stored line with the same number; anything else was assumed to be a DTSS command and immediately executed. Lines which consisted solely of a line number weren't stored but did remove any previously stored line with the same number. This method of editing was necessary because of the use of teletypes as the terminal units for the Dartmouth Timesharing system. A teleprinter (teletypewriter, teletype or TTY) is a now largely obsolete electro-mechanical typewriter which can be used to communicate typed messages from point to point through a simple electrical communications channel, often just a pair of wires. ...

List of commands

  • HELLO -- to log in to DTSS
  • BASIC -- to start BASIC mode
  • NEW -- to name and begin writing a program
  • OLD -- to retrieve a previously named program from permanent storage
  • LIST -- to display the current program
  • SAVE -- to save the current program in permanent storage
  • UNSAVE -- to clear the current program from permanent storage
  • CATALOG -- to display the names of programs in permanent storage
  • SCRATCH -- to erase the current program without clearing its name
  • RENAME -- to change the name of the current program without erasing it
  • RUN -- to execute the current program
  • STOP -- to interrupt the currently running program

The commands were often believed to be part of the BASIC language by users but in fact they were part of the time sharing system and were also used when preparing Algol or FORTRAN programs via the DTSS terminals.


List of statements

  • DEF -- for defining single line functions
  • DIM -- for defining the size of arrays
  • END -- for defining the end of the program
  • STOP -- for stopping a program before the textual end
  • FOR / TO / STEP -- for defining loops
  • NEXT -- for marking the end of loops
  • GOSUB -- for transferring control to simple subroutines
  • RETURN -- for returning control from simple subroutines
  • GOTO -- for transferring control to another statement
  • IF / THEN -- for decision making
  • LET / = -- for assignment of formula results to a variable
  • PRINT -- for output of results
  • DATA -- for storing data within the program
  • READ -- for input of data stored in DATA statements
  • REM -- for comments

It also implemented floating-point numeric variables and arithmetic. Variable names were limited to A to Z, A0 to A9, B0 to B9, ..., Z0 to Z9, giving a maximum of 286 possible distinct variables. Array names were restricted to A to Z only. Arrays did not need to be defined but in the absence of a DIM statement, they defaulted to 10 elements subscripted from 1 to 10.

List of operators

Aritmetical operators Relational/logical operators
- Negation (unary op.) = Equal To
+ Addition <> Not Equal To
- Subtraction (binary op.) < Less Than
* Multiplication <= Less Than or Equal To
/ Division > Greater Than
^ Exponentiation > Greater Than or Equal To
Grouping operator
( ) Grouping

List of functions

  • INT -- Integer value
  • ABS -- Absolute value
  • SQR -- Square root value
  • SIN -- Sine value
  • COS -- Cosine value
  • ATN -- Arctangent value
  • LOG -- Natural Logarithmic value
  • EXP -- Exponential value
  • RND -- Random value


External links

  Results from FactBites:
BASIC programming language (2290 words)
The original BASIC language was invented in 1964 by John George Kemeny (1926-93) and Thomas Eugene Kurtz (1928-) at Dartmouth College.
BASIC intended to address the complexity issues of older languages with a new language designed specifically for the new class of users the time-sharing systems allowed – that is, a "simpler" user who was not as interested in speed as in simply being able to use the machine.
Although it is somewhat difficult to consider this language to be BASIC (despite its using many familiar BASIC keywords) it has gone on to become one of the most used languages on the Windows platform, and is said to represent some 70 to 80% of all commercial development.
Vox of Dartmouth - Back to BASICs 40 years later - 05/03/04 (625 words)
It was on that day 40 years ago that two Dartmouth mathematics professors, John Kemeny and Thomas Kurtz, launched their BASIC computing language with the help of many industrious undergraduates.
BASIC (which stands for Beginners' All-purpose Symbolic Instruction Code) went on to be the most widely used computer language in the world, according to Kurtz, bringing computer technology to general audiences.
BASIC ran on the Dartmouth Time Sharing System (DTSS), a network of multiple simple terminals connected to a large computer, which was about a five-year-old idea at the time.
  More results at FactBites »



Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m