Chapter 2 Flashcards
What is the general timeline for programming languages (from oldest to newest)?
- Fortran & FLOW-MATIC
- ALGOL
- LISP
- COBOL & APL
- BASIC & PL/I
- Pascal & C
- Prolog
- Scheme
- Smalltalk
- Miranda
- C++
- Perl
- Haskell
- Python
- Java & PHP
- Ruby
- C#
What languages broadly influence what other language?
- Fortran → ALGOL
- ALGOL → Pascal, C
- Fortran and ALGOL → BASIC
- Fortran, ALGOL, and COBOL → PL/I
- LISP → Scheme
- SNOBOL → awk
- Java and C++ → C#
What are some early precursors of programming languages?
- Fortran (FORmula TRANslation)
- LISP (LISt Processing)
- ALGOL (ALGOrithmic Language)
- COBOL (Common Object Business Oriented Language)
- APL (AProgramming Language)
- SNOBOL
- SIMULA
- BASIC (Beginner’s All-purpose Symbolic Instruction Code)
What was the first compiling system?
A-0 by Grace Hopper at UNIVAC.
Fortran…what were its major additions to programming languages?
- first compiled language
- one of the earliest high-level languages
- array processing
- subroutines and functions
- implicit typing
Functional programming…why was it created and what language came first?
It was created to handle list processing and applications for AI. LISP was the first functional language.
Algol…why is it such an important language?
- influenced many languages (e.g. C)
- attempted to be a universal language
- major advancements (lots of stuff!):
+ concept of a data type
+ compound statements
+ unlimited length names for identifiers
+ arrays of any dimensions
+ nested selection statements
+ used a BNF (Backus-Naur Form) to describe the grammar
+ block statements
+ pass-by-value and pass-by-name
+ recursion
+ stack-dynamic arrays
Cobol…what is its purpose and what did it add to programming languages?
- provided a programming language for business, finance, and administrative purposes
- allowed for a data definition section and a computation section
- DEFINE macro
- hierarchical data structures (records)
Why is Basic an important language?
- popular for microcomputers (small memory)
- easy for beginners to learn
What did PL/I get wrong?
- was very complex because it tried to include “the best parts“ of popular languages (like Fortran, ALGOL, and COBOL) during the time
- programs were allowed to create concurrently executing subprograms
Why was ADA unsuccessful?
- most expensive and extensive design effort
- developed for the DoD
- too large
- too complex
What was the first OO language?
Smalltalk