Basic Came From Fortran

The original FORTRAN (FortranLanguage) was, well, a formula translator. Other features, like control structures and input/output, were pretty much an after thought. Punch card (HollerithPunchCard) unit record equipment was in heavy use in the '50s and its fixed column conventions pervade FORTRAN, from column reservations in the source to the hopelessly rigid FORMAT statement. Even the introduction of real number support was odd: if column 6 was punched with an R, then formula on the remainder of the card would be translated using the floating point instructions newly available on some machines.

{insert image of FORTRAN coding form here.}

Even with the improvements of FORTRAN II, III and IV, the language's unit record orientation caused tremendous grief for students trying to learn programming, especially from TeleType terminals that didn't have any column position indicator. Dartmouth, which had invested heavily in their campus timesharing system, saw that something had to change. With the then emerging understanding that the concepts of computing could transcend expression, they set out to make a teletype-friendly version of FORTRAN. One breakthrough of the time was the integration of the development environment with the language. This was done through universal line numbering which quickly turned into a liability but was, at the time, the SimplestThingThatCouldPossiblyWork.

The result, BASIC (BasicLanguage), the Beginners All-Purpose Symbolic Instruction Code, is a child of FORTRAN. Here is more evidence ...

-- JeffGrigg, WardCunningham

I would say that FORTRAN is the home of the GOTO statement, with statements like

 IF (expression) 100, 200, 300
which does a GoTo to 100, 200, or 300 depending on the sign (-, 0, +) of the expression result.

While FortranLanguage had functions and subroutines with parameters, CobolLanguage introduced structures and AlgolLanguage introduced sane flow control. All of these concepts of the '50s have been widely incorporated in every language we would consider using today, even VisualBasic. (The odd man out from the '50s is LispLanguage.)

Free format read and write were not in FORTRAN IV, but came in as extensions which different implementations did differently. That got standardized in FORTRAN 77. Certainly, when I started using FORTRAN in 1966 it was all about counting spaces.

For me, BASIC is very much associated with having an interpreter and being able to run it immediately, instead of compile and link. I have a memory of using an interactive system with programs in files in the early 1970s (before Sept. 1972 when I moved jobs) but whether that was BASIC or compiled FORTRAN I can't remember exactly. It was just so much better than decks of cards and IBM JCL (JobControlLanguage). -- JohnFletcher

So it is, but the first BASIC was a compiler.

I learned both simultaneously as my FirstLanguageLearned, and I can say for a fact that books did not compare the two. The phenomena that are observed probably came from migration of features between the two languages between each other. -- ThaddeusOlczyk

BASIC (Beginner's All-purpose Symbolic Instruction Code):
"A programming language developed in the mid-1960s."
"The first major high-level programming language, developed in the late 1950s, designed to aid physicists, engineers, and other scientists in numerical analysis."
"High-level programming language designed in the late 1950s in order to facilitate data management and analysis for businesses."

See also DartmouthBasic, LanguagesVsEnvironments
CategoryFortran CategoryComputingHistory CategoryProgrammingLanguageComparisons

View edit of October 8, 2012 or FindPage with title or text search