In 1964, students at Dartmouth College needed better access to computers and a simple, effective language to write computer programs. First, John G. Kemeny, who was the chairman of the Department of Mathematics, and Professor Thomas Kurtz created the Dartmouth Time-Sharing System, one of the first time-share computer systems in the United States; then they created BASIC computer language so students could write programs to run on the General Electric GE-225 mainframe that was the heart of the system. On May 1, 1964, two programs written in BASIC ran simultaneously on the Dartmouth time-shared system and both accomplishments would change computing forever. Ten years later, a version of BASIC written by Bill Gates and Paul Allen was included on the Altair, the first personal computer, and after three decades, BASIC is by far the most popular computer programming language.
Kemeny and Kurtz started working on a simplified computer language in 1956. Their first programming language, Dartmouth Simplified Code (Darsimco), fell by the wayside in 1957 when FORTRAN was introduced. Another ancestor of BASIC was Dartmouth Oversimplified Programming Experiment (DOPE), which was too primitive to be useful, however both Darsimco and DOPE enabled Kemeny and Kurtz to experiment with computer languages that were targeted to the non-expert computer user.
In the early 1960s, John Kemeny believed a new language was necessary to enable non-science students to use computers. In addition, for the time-sharing to be successful, the new language would need to be simple. Thomas Kurtz; however, felt that a subset of the FORTRAN or ALGOL languages could be used. While attempting to change FORTRAN, they realized the result would in fact be a new language, and the two men then began work on BASIC.
True Basic is an ANSI Standard Basic developed by John Kemeny and Thomas Kurtz, the authors of the original Basic language. True Basic is a trademark of and can be obtained through that company. True Basic is a modern structured language and may be the most gentle environment for beginning programmers.
Language Features
- Extremely easy to learn
- Powerful enough for applications development
- Fully structured, follows modern programming concepts
- Integrated environment with source, command, and output windows
- Full-featured editor
- Instructive demo programs included
- User-extensible function set
- Very close to ANSI Standard BASIC
- Versions for most popular operating systems.
Documentation*
- 600+ pages
- Guide to using the language
- Definitive language reference
- Technical specifications
Illustrations and examples ASCII chart Complete error message explanationsVariables
- Only two types - numbers and strings
- Variable typing by name
- Unlimited variable name length
- Complete control of scope
Strings
- Maximum length 64K each under DOS
- Unlimited string length in the
- Macintosh version
- Substring expressions
- String to number conversions
- Number to string conversions
- Concatenation operator
Numbers
- Up to 16 accurate digits
- Automatic coprocessor support
- Range from 5e-309 to 1.8e+308
- Standard IEEE 8-byte format
- Exponentiation operator
Modularization
- Named subroutines with parameters
- Multi-line, user-defined functions
- Full support of recursion
- Modules to control scope of data and routines
- Commercial and user-defined library support
- Support for assembly and C routines
- Internal and external procedures
Structures
- Multi-line IF...THEN...ELSEIF... ELSE
- SELECT CASE structure
- DO loops with WHILE and UNTIL
- FOR...NEXT loops
- Error handlers
- PICTURE structures for graphics
Text
- Complete cursor control
- Formatted output to screen, files, and printer
- Print zones for columnar output
- Flexible input with type-checking
- Input by line, item, or key
Graphics
- User-defined coordinate systems
- Support for multiple "windows"
- Built-in 2D transformations
- Color support with user-defined colors
- Support for mouse and arrow keys
- Animation capabilities
- Plot points, lines, and text
- Plot rectangles, ellipses, & regions
- Filled or outlined objects
- Matrix plotting capabilities
- Justified text plotting
- Region flooding
- Transformable pictures
Sound
- Sounds by frequency and duration
- Music with sophisticated PLAY statement
- Sharps and flats
- Dotted notes and rests
- 8 octaves
- User-definable tempo
- Legato, normal, and staccato tempo modifiers
- Music playable in background
Files
- ASCII text data files
- Random-access record files
- Open format byte files
Built-In Editor
- Window based
- Full mouse support
- Menu and/or command driven
- Cut, copy, and paste
- Global and local search and replace
- Keyboard macros
- Script file support
- Pre-processor capabilities
- Configurable environment
- Saves programs as ASCII text files
- Saves programs of any length*
Matrix Features
- Limited only by available memory
- Up to 255 dimensions per array
- Default lower bound user definable
- Fully dynamic, resizeable arrays
- Arrays of strings or numbers
- Built-in matrix arithmetic operations
- Inverse and transpose functions
- Determinants and identities
- Dot and scalar products
- Matrix input and output
- Matrix graphics
- Complete subscript range functions
Compiler
- Compiles to fast, compact b-code
- Allows separately compiled libraries
- Parameter type-checking
- Syntax-checking
- Optional LET statement
- Optional declared variable names
- Program size limited only by available memory*
- Automatic memory management
- Does not require line numbers
Debugging
- Breakpoints with continue
- Immediate mode execution
- Visual trace utility
- Single-step execution capability
- Cross-reference utility
Stand-alone Applications*
- Easy to create; take your source code and bind it into a program
- .EXE files on PC
- Double-clickable files on Macintosh
- Single file applications
- No royalty fees
* Standard Edition features
More to come!!!