🗊 Презентация Programming languages

Нажмите для полного просмотра!
Programming languages, слайд №1 Programming languages, слайд №2 Programming languages, слайд №3 Programming languages, слайд №4 Programming languages, слайд №5 Programming languages, слайд №6 Programming languages, слайд №7 Programming languages, слайд №8 Programming languages, слайд №9 Programming languages, слайд №10 Programming languages, слайд №11 Programming languages, слайд №12 Programming languages, слайд №13 Programming languages, слайд №14 Programming languages, слайд №15 Programming languages, слайд №16 Programming languages, слайд №17 Programming languages, слайд №18 Programming languages, слайд №19 Programming languages, слайд №20 Programming languages, слайд №21 Programming languages, слайд №22 Programming languages, слайд №23 Programming languages, слайд №24 Programming languages, слайд №25 Programming languages, слайд №26 Programming languages, слайд №27 Programming languages, слайд №28 Programming languages, слайд №29 Programming languages, слайд №30 Programming languages, слайд №31 Programming languages, слайд №32 Programming languages, слайд №33 Programming languages, слайд №34 Programming languages, слайд №35 Programming languages, слайд №36 Programming languages, слайд №37 Programming languages, слайд №38 Programming languages, слайд №39 Programming languages, слайд №40 Programming languages, слайд №41 Programming languages, слайд №42 Programming languages, слайд №43 Programming languages, слайд №44

Содержание

Вы можете ознакомиться и скачать презентацию на тему Programming languages. Доклад-сообщение содержит 44 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1


Programming Languages 1. Introduction Prof. O. Nierstrasz Spring Semester 2010
Описание слайда:
Programming Languages 1. Introduction Prof. O. Nierstrasz Spring Semester 2010

Слайд 2


Programming Languages
Описание слайда:
Programming Languages

Слайд 3


Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History
Описание слайда:
Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History

Слайд 4


Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History
Описание слайда:
Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History

Слайд 5


Sources Text: Kenneth C. Louden, Programming Languages: Principles and Practice, PWS Publishing (Boston), 1993. Other Sources: Paul Hudak,...
Описание слайда:
Sources Text: Kenneth C. Louden, Programming Languages: Principles and Practice, PWS Publishing (Boston), 1993. Other Sources: Paul Hudak, “Conception, Evolution, and Application of Functional Programming Languages,” ACM Computing Surveys 21/3, 1989, pp 359-411. Clocksin and Mellish, Programming in Prolog, Springer Verlag, 1987.

Слайд 6


Schedule Introduction Stack-based programming Scheme (guest lecture) Functional programming Types and polymorphism Lambda calculus Fixed points...
Описание слайда:
Schedule Introduction Stack-based programming Scheme (guest lecture) Functional programming Types and polymorphism Lambda calculus Fixed points Programming language semantics Objects and types Logic programming Applications of logic programming Visual programming Final exam

Слайд 7


Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History
Описание слайда:
Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History

Слайд 8


What is a Programming Language? A formal language for describing computation? A “user interface” to a computer? Syntax + semantics? Compiler, or...
Описание слайда:
What is a Programming Language? A formal language for describing computation? A “user interface” to a computer? Syntax + semantics? Compiler, or interpreter, or translator? A tool to support a programming paradigm?

Слайд 9


What is a Programming Language? (II)
Описание слайда:
What is a Programming Language? (II)

Слайд 10


Themes Addressed in this Course
Описание слайда:
Themes Addressed in this Course

Слайд 11


Generations of Programming Languages 1GL: machine codes 2GL: symbolic assemblers 3GL: (machine-independent) imperative languages (FORTRAN, Pascal, C...
Описание слайда:
Generations of Programming Languages 1GL: machine codes 2GL: symbolic assemblers 3GL: (machine-independent) imperative languages (FORTRAN, Pascal, C ...) 4GL: domain specific application generators 5GL: AI languages … Each generation is at a higher level of abstraction

Слайд 12


How do Programming Languages Differ? Common Constructs: basic data types (numbers, etc.); variables; expressions; statements; keywords; control...
Описание слайда:
How do Programming Languages Differ? Common Constructs: basic data types (numbers, etc.); variables; expressions; statements; keywords; control constructs; procedures; comments; errors ... Uncommon Constructs: type declarations; special types (strings, arrays, matrices, ...); sequential execution; concurrency constructs; packages/modules; objects; general functions; generics; modifiable state; ...

Слайд 13


Programming Paradigms
Описание слайда:
Programming Paradigms

Слайд 14


Compilers and Interpreters Compilers and interpreters have similar front-ends, but have different back-ends.
Описание слайда:
Compilers and Interpreters Compilers and interpreters have similar front-ends, but have different back-ends.

Слайд 15


Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History
Описание слайда:
Roadmap Course Schedule Programming Paradigms A Quick Tour of Programming Language History

Слайд 16


A Brief Chronology
Описание слайда:
A Brief Chronology

Слайд 17


Fortran History John Backus (1953) sought to write programs in conventional mathematical notation, and generate code comparable to good assembly...
Описание слайда:
Fortran History John Backus (1953) sought to write programs in conventional mathematical notation, and generate code comparable to good assembly programs. No language design effort (made it up as they went along) Most effort spent on code generation and optimization FORTRAN I released April 1957; working by April 1958 The current standard is FORTRAN 2003 (FORTRAN 2008 is work in progress)

Слайд 18


Fortran … Innovations Symbolic notation for subroutines and functions Assignments to variables of complex expressions DO loops Comments Input/output...
Описание слайда:
Fortran … Innovations Symbolic notation for subroutines and functions Assignments to variables of complex expressions DO loops Comments Input/output formats Machine-independence Successes Easy to learn; high level Promoted by IBM; addressed large user base (scientific computing)

Слайд 19


“Hello World” in FORTRAN All examples from the ACM "Hello World" project: www2.latech.edu/~acm/HelloWorld.shtml
Описание слайда:
“Hello World” in FORTRAN All examples from the ACM "Hello World" project: www2.latech.edu/~acm/HelloWorld.shtml

Слайд 20


ALGOL 60 History Committee of PL experts formed in 1955 to design universal, machine-independent, algorithmic language First version (ALGOL 58) never...
Описание слайда:
ALGOL 60 History Committee of PL experts formed in 1955 to design universal, machine-independent, algorithmic language First version (ALGOL 58) never implemented; criticisms led to ALGOL 60 Innovations BNF (Backus-Naur Form) introduced to define syntax (led to syntax-directed compilers) First block-structured language; variables with local scope Structured control statements Recursive procedures Variable size arrays Successes Highly influenced design of other PLs but never displaced FORTRAN

Слайд 21


“Hello World” in BEALGOL
Описание слайда:
“Hello World” in BEALGOL

Слайд 22


COBOL History Designed by committee of US computer manufacturers Targeted business applications Intended to be readable by managers (!) Innovations...
Описание слайда:
COBOL History Designed by committee of US computer manufacturers Targeted business applications Intended to be readable by managers (!) Innovations Separate descriptions of environment, data, and processes Successes Adopted as de facto standard by US DOD Stable standard for 25 years Still the most widely used PL for business applications (!)

Слайд 23


“Hello World” in COBOL
Описание слайда:
“Hello World” in COBOL

Слайд 24


PL/1 History Designed by committee of IBM and users (early 1960s) Intended as (large) general-purpose language for broad classes of applications...
Описание слайда:
PL/1 History Designed by committee of IBM and users (early 1960s) Intended as (large) general-purpose language for broad classes of applications Innovations Support for concurrency (but not synchronization) Exception-handling on conditions Successes Achieved both run-time efficiency and flexibility (at expense of complexity) First “complete” general purpose language

Слайд 25


“Hello World” in PL/1
Описание слайда:
“Hello World” in PL/1

Слайд 26


Functional Languages ISWIM (If you See What I Mean) Peter Landin (1966) — paper proposal FP John Backus (1978) — Turing award lecture ML Edinburgh...
Описание слайда:
Functional Languages ISWIM (If you See What I Mean) Peter Landin (1966) — paper proposal FP John Backus (1978) — Turing award lecture ML Edinburgh initially designed as meta-language for theorem proving Hindley-Milner type inference “non-pure” functional language (with assignments/side effects) Miranda, Haskell “pure” functional languages with “lazy evaluation”

Слайд 27


“Hello World” in Functional Languages SML Haskell
Описание слайда:
“Hello World” in Functional Languages SML Haskell

Слайд 28


Prolog History Originated at U. Marseilles (early 1970s), and compilers developed at Marseilles and Edinburgh (mid to late 1970s) Innovations Theorem...
Описание слайда:
Prolog History Originated at U. Marseilles (early 1970s), and compilers developed at Marseilles and Edinburgh (mid to late 1970s) Innovations Theorem proving paradigm Programs as sets of clauses: facts, rules and questions Computation by “unification” Successes Prototypical logic programming language Used in Japanese Fifth Generation Initiative

Слайд 29


“Hello World” in Prolog
Описание слайда:
“Hello World” in Prolog

Слайд 30


Object-Oriented Languages History Simula was developed by Nygaard and Dahl (early 1960s) in Oslo as a language for simulation programming, by adding...
Описание слайда:
Object-Oriented Languages History Simula was developed by Nygaard and Dahl (early 1960s) in Oslo as a language for simulation programming, by adding classes and inheritance to ALGOL 60 Smalltalk was developed by Xerox PARC (early 1970s) to drive graphic workstations

Слайд 31


Object-Oriented Languages Innovations Encapsulation of data and operations (contrast ADTs) Inheritance to share behaviour and interfaces Successes...
Описание слайда:
Object-Oriented Languages Innovations Encapsulation of data and operations (contrast ADTs) Inheritance to share behaviour and interfaces Successes Smalltalk project pioneered OO user interfaces Large commercial impact since mid 1980s Countless new languages: C++, Objective C, Eiffel, Beta, Oberon, Self, Perl 5, Python, Java, Ada 95 ...

Слайд 32


Interactive Languages Made possible by advent of time-sharing systems (early 1960s through mid 1970s). BASIC Developed at Dartmouth College in mid...
Описание слайда:
Interactive Languages Made possible by advent of time-sharing systems (early 1960s through mid 1970s). BASIC Developed at Dartmouth College in mid 1960s Minimal; easy to learn Incorporated basic O/S commands (NEW, LIST, DELETE, RUN, SAVE) ...

Слайд 33


Interactive Languages ... APL Developed by Ken Iverson for concise description of numerical algorithms Large, non-standard alphabet (52 characters in...
Описание слайда:
Interactive Languages ... APL Developed by Ken Iverson for concise description of numerical algorithms Large, non-standard alphabet (52 characters in addition to alphanumerics) Primitive objects are arrays (lists, tables or matrices) Operator-driven (power comes from composing array operators) No operator precedence (statements parsed right to left)

Слайд 34


Special-Purpose Languages SNOBOL First successful string manipulation language Influenced design of text editors more than other PLs String...
Описание слайда:
Special-Purpose Languages SNOBOL First successful string manipulation language Influenced design of text editors more than other PLs String operations: pattern-matching and substitution Arrays and associative arrays (tables) Variable-length strings ...

Слайд 35


Symbolic Languages ... Lisp Performs computations on symbolic expressions Symbolic expressions are represented as lists Small set of...
Описание слайда:
Symbolic Languages ... Lisp Performs computations on symbolic expressions Symbolic expressions are represented as lists Small set of constructor/selector operations to create and manipulate lists Recursive rather than iterative control No distinction between data and programs First PL to implement storage management by garbage collection Affinity with lambda calculus

Слайд 36


4GLs “Problem-oriented” languages PLs for “non-programmers” Very High Level (VHL) languages for specific problem domains Classes of 4GLs (no clear...
Описание слайда:
4GLs “Problem-oriented” languages PLs for “non-programmers” Very High Level (VHL) languages for specific problem domains Classes of 4GLs (no clear boundaries) Report Program Generator (RPG) Application generators Query languages Decision-support languages Successes Highly popular, but generally ad hoc

Слайд 37


“Hello World” in RPG
Описание слайда:
“Hello World” in RPG

Слайд 38


“Hello World” in SQL
Описание слайда:
“Hello World” in SQL

Слайд 39


Scripting Languages History Countless “shell languages” and “command languages” for operating systems and configurable applications
Описание слайда:
Scripting Languages History Countless “shell languages” and “command languages” for operating systems and configurable applications

Слайд 40


Scripting Languages ... Innovations Pipes and filters (Unix shell) Generalized embedding/command languages (TCL) Successes Unix Shell, awk, emacs,...
Описание слайда:
Scripting Languages ... Innovations Pipes and filters (Unix shell) Generalized embedding/command languages (TCL) Successes Unix Shell, awk, emacs, HyperTalk, AppleTalk, TCL, Python, Perl, VisualBasic ...

Слайд 41


The future? Dynamic languages very active Domain-specific languages very active Visual languages many developments, but still immature Modeling...
Описание слайда:
The future? Dynamic languages very active Domain-specific languages very active Visual languages many developments, but still immature Modeling languages emerging from UML and MDE …

Слайд 42


What you should know! What, exactly, is a programming language? How do compilers and interpreters differ? Why was FORTRAN developed? What were the...
Описание слайда:
What you should know! What, exactly, is a programming language? How do compilers and interpreters differ? Why was FORTRAN developed? What were the main achievements of ALGOL 60? Why do we call C a “Third Generation Language”? What is a “Fourth Generation Language”?

Слайд 43


Can you answer these questions? Why are there so many programming languages? Why are FORTRAN and COBOL still important programming languages? Which...
Описание слайда:
Can you answer these questions? Why are there so many programming languages? Why are FORTRAN and COBOL still important programming languages? Which language should you use to implement a spelling checker? A filter to translate upper-to-lower case? A theorem prover? An address database? An expert system? A game server for initiating chess games on the internet? A user interface for a network chess client?

Слайд 44


License
Описание слайда:
License



Похожие презентации
Mypresentation.ru
Загрузить презентацию