1954[55?]-65: Age of Batch OS ("2nd" gen.)
They reduce idle-time of the computer
by not waiting during on-line programming.
Programs come on batches of punched cards or on tape,
are read in, and processed, the output goes to tape or is printed.
1954: IBM 650, a decimal, drum memory machine.
1000 leased to universities etc.
1955: IBM 704, first commercial computer with indexing and floating point arithmetics
with magnetic core storage.
1956: IBM's RAMAC 305, first magnetic hard disk for data storage.
Encod., 1957: US Army's FIELDATA 7-bit, 128 character code with alphabetically sorted upper/lower-case and control codes TAB, BS, EOF, ESC, etc. Used up to 1969.
[<>].
Older? codes with alphabetical order:
2-table 5-bit, 4-table 5-bit with upper+lower case, 6-bit+parity codes.
1957: IBM 608, first commercial all-transistor calculator.
1957: Olsen + Anderson formed DEC (supported by $70,000)
1958: Wilkes's [<>]
EDSAC 2 operational,
first computer with microprogrammed control unit.
Notat. + Encod. the 50's: E-13B digit font designed for automatic banking [>]
1954: several (simple) compilers are presented
at the US Naval Research's Symposium on Automatic Programming [CC].
1954: Adams, Laning, Zierler's first algebraic compiler
(for the Whirlwind) [CC].
Model.+Notat(???), 1955[<>]:
Moore's (Bell) finite state automata
1956: Samuel's (IBM) checkers-playing learning computer.
Terminology 1956[<>]:
John McCarthy[>]
(in a project proposal) coins the term "Artificial Intelligence"
1957: The original Fortran compiler has 25,000 lines of machine code
1956/58: SAGE controls US Air Force warning system.
1958: Work on compiler for Lisp abandoned for simpler interpreter,
as implementation of Lisp's universal apply/eval function on Lisp programs represented as lists with quoted expressions.
Nested expression represented by structures in memory;
garbage collection.
[when?] A team including Hopper[<>]
develops Flow-Matic, the first English-language data-processing compiler.
PL, 1954-present: high-level PL (HLPL) (3rd gen. PL)
[prev: assembly]
allow progamming without knowing the CPU.
1954: Von Neumann, confronted with Fortran concept: «why would you want more than machine language?»
[OOAD]
simplify calculation of mathematic formulas.
1954: J W Carr III proclaims a universal machine independant PL [CC].
1954: T Brooker's Autocode for Ferranti Mark I.
19(54-)57: J Backus's [>]
IBM team develops Fortran[>] for scientific calculations:
32 instructions,
if statement, strict if-function, for-loops (do),
type-checking (int. v float.
- variable's type defaults to one of them depending on first letter of name),
first implemented arrays (aniticipated in Plankalkül),
call-by-reference parameters,
multiletter variable names, "**"
 1956 [<>]:
Ackermann's [<]
Relevance Logic: a formal theory of implication
in which the antecedent 'has a logical connection' with the consequent
-- free of paradoxes not only of material implication but also of strict implication
[x].
Linguistics/Syntax, 1956/7/8[>]:
Chomsky's, Harris's and Hockett's notion of the language's deep structure.
Formalized in form of Chomsky's transformation grammar.
1957: Ljapunov (Russia) and Yanov's algorithmic notation [CC].
1957: Kantorovic (Russia) introduces parse trees
to represent formulae [CC].
1957: Bauer and Samuelson's design of a machine
accepting "algebraic code" [CC].
1957: Kleene's [<]
regular expressions [CBR]
Notat.: "*" for Kleene closure ???
1958: Lambek's calculus of sentence structure:
a context-free grammar, or, equivalently, a proof system.
Notat. for relations: On of the earliest uses of a/b and a\b for left and right relation residual
[CBR]
1958, Algo: McCarthy[<>]
has the idea of the maplist function.
(before: exposure to Fortran and the Algol 58 committee)
1958: McCarthy's [<>]
(MIT) Lisp for symbolic computing (for AI):
First functional PL, non-strict if expression, recursion, functions as values,
and lists (which implement Plankalkül's "× t" types).
Runs on interpreter (c.f. applications).
1958: Algol58 [>]
conference and first compilers [CC]:
formal concept of type,
names of any length,
arrays with any number of subscripts (written in square brackets),
in/out parameter modes,
begin ... end (but not block structure = local scope),
semicolon separator,
":=" assignment
[from]
1958: Fortran II[<>]
with separate compilation
Meaning, 1958[<>]:
Roger Penrose's (physicist) suggestion to Stachey to use the lambda-calculus[<>]
for studying PL semantics
[cf footnote 1 in Henglein, Mairson: The complexity of type inference for higher-order typed lambda calculi; 1993]
| | |