Fortran Fortran – Formula Translation –Developed by John Backus (IBM) in the mid 1950s. –It was a team effort and the design goal was to produce a translation for the language they designed that produces assembly language as efficient as hard coded assembly language. Fortran is a procedural (a.k.a imperative) language. –This is a language that is compiled. –Compile means translate. A compiler is a translator. –Interpreted = Translated
BASIC BASIC – Most famous and first interpreted programming language. Beginners All-Purpose Symbolic Interpreted Code
Java Hybrid Language Compiled into CLASS files and interpreted by Java run-time environment each time program is run.
Pascal Single Designer – Nicklaus Wirth Design goal was to create a good language for teaching programming concepts
Ada Large design effort by the D.O.D. in 1983 Designer – Jean Ichbiah (team leader)
Functional Languages LISP – MIT artificial intelligence language –Almost concurrent with FORTRAN – List Processing
PROLOG Logic Programming PROLOG – Programming with logic
Less Widely Used Languages Squeak is an object oriented language, a derivative of small-talk. Snobol (developed by Ralph Griswold) is a string processing language.
Why should we take this course? It is required We are CS majors and coding is our game How can we know where we’re going if we don’t know where we’ve been? The more languages you know the easier it is to adapt to new languages. Put it on the resume. Versatility Some languages are better suited for particular tasks than others
Things Found in Programs Declarations and instantiations Statements –Assignments –Selections (if-else, select) –Iteration –Input/Output
ALGOL ALGOL – Algorithmic Language –Grandfather of Ada, Pascal, Java, and many of the languages that followed it –Block structure language –Lost popularity since it did not standardize input/output Syntax description known as Backus Naur (normal) form – Way of describing the language - Syntax describes the language Grammar consists of: Non-terminal symbols, Terminal symbols, a start (or goal) symbol and productions (rules). Metasymbols: | or ::= (reference handout for details)
Homework for Thursday 9/1 Write a syntactically correct program in Mini-Language Core – syntax described in handout – may do it individually or in teams of 2 people. Names on top as well as “Homework #1 – August 30”. Printout due at start of class. Download Force Buy book (Programming Languages – Robert W. Sebesta)