* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Lecture 32 : Course Summary
Stream processing wikipedia , lookup
Join-pattern wikipedia , lookup
Object-relational impedance mismatch wikipedia , lookup
Control flow wikipedia , lookup
Falcon (programming language) wikipedia , lookup
Go (programming language) wikipedia , lookup
Abstraction (computer science) wikipedia , lookup
Logic programming wikipedia , lookup
Functional programming wikipedia , lookup
C Sharp (programming language) wikipedia , lookup
Programming language wikipedia , lookup
Object-oriented programming wikipedia , lookup
Course Summary Programming Language Principles Lecture 32 Prepared by Manuel E. Bermúdez, Ph.D. Associate Professor University of Florida Course Topics • • • • • • • • • • Paradigms. Parsing. RPAL. Names, Scopes and Bindings. Attribute Grammars. Control Flow. Data Types. Subprograms. Denotational Semantics. Logic Programming. Course Topics (cont’d) • Concurrent Programming. • Object-Oriented Programming. Focus on issues: Linguistics of Programming. Two parts: • Syntax (easy). • Semantics (hard). Programming (Language) Paradigms • FOUR PARADIGMS OF COMPUTING • Imperative: • WHAT DO WE DO NEXT ? • Functional: • WHAT IS THE FUNCTION’S VALUE ? • Logic: • WHAT CONDITIONS ARE NEEDED ? • Object-Oriented: • WHAT IS THE OBJECT’S BEHAVIOR ? Topics Not Covered • Programming Language Design. • Programming Language Implementation. • Formal Models for Type Systems. • Axiomatic Approach to Semantics. • History of Programming Languages. – For a very nice presentation, see Chapter 24 of www.webber-labs.com/mpl/lectures/index.html Some Observations Programming Languages are: • Like humans: – Love/hate relationship. • Incredibly diverse. PAL is listed among the 2500+ languages at http://people.ku.edu/~nkinners/ LangList/Extras/langlist.htm • RPAL is also among 737 languages listed at http://www.99-bottles-of-beer.net Some Observations (cont’d) Programming languages are: • Subject to heated debates, (almost) religious fervor. – See comp.lang.* newsgroups. • Constantly evolving, with many dialects. • Unpredictable when it comes to achieving widespread use. Some Observations (cont’d) Programming languages are: • Influential on programming practice (and vice-versa). – Goto’s, O-O programming. • Influential on machine architecture (and vice-versa). Think of: – Stack support, parallel computing, Internet. – Lately, power efficiency. Some Observations (cont’d) Programming languages are: • A lot of FUN ! A final quote, from Carl Sagan ... Course Summary Programming Language Principles Lecture 32 Prepared by Manuel E. Bermúdez, Ph.D. Associate Professor University of Florida