1 / 12

Final Review

Final Review. In Text: Chapters 1-3, 5-10, 15-16. Ch. 1: Introduction. Why study PLs? Language evaluation criteria Two main influences on PL design 5 paradigms Implementation strategies. Ch. 2: History and Evolution. What are the major contribution(s) of each language? Examples:

wall
Download Presentation

Final Review

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Final Review In Text: Chapters 1-3, 5-10, 15-16

  2. Ch. 1: Introduction • Why study PLs? • Language evaluation criteria • Two main influences on PL design • 5 paradigms • Implementation strategies  Final Exam Review 

  3. Ch. 2: History and Evolution • What are the major contribution(s) of each language? • Examples: • Support for recursion • Introduction of block structure • First in a paradigm • First formally described syntax • Etc. • Most important to review: FORTRAN, LISP, ALGOL  Final Exam Review 

  4. Ch. 3: Syntax and Semantics • BNF & EBNF • What makes a grammar ambiguous? • How do you disambiguate a grammar? • What does it mean for two grammars to “generate the same language”? • Operational semantics • Axiomatic semantics • Applying axiomatic semantics to code segments • Loop invariants, 5 criteria • Denotational semantics  Final Exam Review 

  5. Ch. 5: Names and Binding • What are the six attributes? What do they mean? • Binding and possible binding times • Type checking • Two type compatibility methods • Scope vs. lifetime  Final Exam Review 

  6. Ch. 6: Data Types • Primitive types • Type constructors: • Arrays • Records • Unions • Sets • Pointers • Design issues • Type checking issues  Final Exam Review 

  7. Ch. 7: Expressions • Precedence rules • Associativity rules • Order of operand evaluation • Type conversions: widening and narrowing • Type coercions vs. explicit conversions • Mixed-mode expressions • Relational and boolean expressions • Short-circuit evaluation  Final Exam Review 

  8. Ch. 8: Control Structures • Design issues • Selection • One-way • Two-way • Multi-way • Iteration • Counter-controlled • Logically-controlled • Gotos • Guarded statements  Final Exam Review 

  9. Ch. 9: Subprograms • Definitions • Referencing environment • What are the common parameter passing modes and mechanisms? • Independent vs. separate compilation • Advanced subprogram issues  Final Exam Review 

  10. Ch. 10: Implementing Subprograms • Activation records • Accessing locals • Accessing nonlocals (static scoping) • Static chains • Displays • Implementing blocks • Accessing nonlocals with dynamic scoping  Final Exam Review 

  11. Ch. 15: Functional Programming • What are the hallmarks of FP? • Definition of FP terms • Haskell syntax • You may have to write a Haskell function  Final Exam Review 

  12. Ch. 16: Logic Programming • What are the hallmarks of LP? • Definition of LP terms • Prolog syntax • You should be able to read Prolog code • You’ll have to write at least one Prolog predicate  Final Exam Review 

More Related