2-Evolution%20of%20the%20Major%20Programming%20languages

2-Evolution%20of%20the%20Major%20Programming%20languages -...

Info iconThis preview shows pages 1–5. Sign up to view the full content.

View Full Document Right Arrow Icon
ICS 313 - Fundamentals of Programming Languages 1 2. Evolution of the Major Programming languages Genealogy of Common Programming Lang.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
ICS 313 - Fundamentals of Programming Languages 2 2.1 Plankalkül - 1945 ± Never implemented ± Advanced data structures ` floating point, arrays, records ± Invariants ± Notation: A[7] = 5 * B[6] | 5 * B => A V | 6 7 (subscripts) S | 1.n 1.n (data types) 2.2 Pseudocodes - 1949 ± What was wrong with using machine code? ` Poor readability ` Poor modifiability ` Expression coding was tedious ` Machine deficiencies--no indexing or fl. pt. ± Short code; 1949; BINAC; Mauchly ± Expressions were coded, left to right ± Some operations: ` 1n => (n+2)nd power ` 2n => (n+2)nd root ` 07 => addition ± Speedcoding; 1954; IBM 701, Backus ` Pseudo ops for arithmetic and math functions ` Conditional and unconditional branching ` Autoincrement registers for array access ` Slow! ` Only 700 words left for user program ± Laning and Zierler System - 1953 ± Implemented on the MIT Whirlwind computer ± First "algebraic" compiler system ± Subscripted variables, function calls, expression translation ± Never ported to any other machine
Background image of page 2
ICS 313 - Fundamentals of Programming Languages 3 2.3 IBM 704 and FORTRAN ± FORTRAN I - 1957 ± (FORTRAN 0 - 1954 - not implemented) ` Designed for the new IBM 704, which had index ` registers and floating point hardware ± Environment of development: ` Computers were small and unreliable ` Applications were scientific ` No programming methodology or tools ` Machine efficiency was most important ± Impact of environment on design of FORTRAN I ` No need for dynamic storage ` Need good array handling and counting loops ` No string handling, decimal arithmetic, or powerful input/output (commercial stuff) 2.3 IBM 704 and FORTRAN (continued) ± First implemented version of FORTRAN ` Names could have up to six characters ` Posttest counting loop (DO) ` Formatted i/o ` User-defined subprograms ` Three-way selection statement (arithmetic IF) ` No data typing statements ` No separate compilation ` Compiler released in April 1957, after 18 worker/years of effort ` Programs larger than 400 lines rarely compiled correctly, mainly due to poor reliability of the 704 ` Code was very fast ` Quickly became widely used ± FORTRAN II - 1958 ` Independent compilation ` Fix the bugs
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
ICS 313 - Fundamentals of Programming Languages 4 2.3 IBM 704 and FORTRAN (continued) ± FORTRAN IV - 1960-62 ` Explicit type declarations ` Logical selection statement ` Subprogram names could be parameters ` ANSI standard in 1966 ± FORTRAN 77 - 1978 ` Character string handling ` Logical loop control statement ` IF-THEN-ELSE statement ± FORTRAN 90 - 1990 ` Modules ` Pointers ` Recursion ` CASE statement ` Parameter type checking ± FORTRAN Evaluation ` Dramatically changed forever the way ` computers are used 2.4 LISP - 1959 ± LISt Processing language (Designed at MIT by McCarthy) ± AI research needed a language that: ` Process data in lists (rather than arrays)
Background image of page 4
Image of page 5
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 13

2-Evolution%20of%20the%20Major%20Programming%20languages -...

This preview shows document pages 1 - 5. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online