Final Review In Text: Chapters 1-11, 13-15.

Slides:



Advertisements
Similar presentations
Semantics Static semantics Dynamic semantics attribute grammars
Advertisements

ICE1341 Programming Languages Spring 2005 Lecture #13 Lecture #13 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University.
Programming Languages and Paradigms
Adapted from Scott, Chapter 6:: Control Flow Programming Language Pragmatics Michael L. Scott.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 330 Programming Language Structures Ch.2: Syntax and Semantics Fall 2005.
Chapter 9 Subprogram Control Consider program as a tree- –Each parent calls (transfers control to) child –Parent resumes when child completes –Copy rule.
ALGOL 60 Design by committee of computer scientists: Naur, Backus, Bauer, McCarthy, van Wijngaarden, Landin, etc. Design by committee of computer scientists:
Chapter 9: Subprogram Control
Summer 02-03Programming Language Concepts1 Programming Language Concepts (CS 360) Lecture 1: Overview, Grammars, and Little Languages Jeremy R. Johnson.
Dr. Muhammed Al-Mulhem 1ICS ICS 535 Design and Implementation of Programming Languages Part 1 Fundamentals (Chapter 4) Denotational Semantics ICS.
Imperative Programming
(1.1) COEN 171 Programming Languages Winter 2000 Ron Danielson.
CSC3315 (Spring 2009)1 CSC 3315 Programming Languages Hamid Harroud School of Science and Engineering, Akhawayn University
5-1 Chapter 5: Names, Bindings, Type Checking, and Scopes Variables The Concept of Binding Type Checking Strong Typing Type Compatibility Scope and Lifetime.
Programming Languages and Design Lecture 7 Subroutines and Control Abstraction Instructor: Li Ma Department of Computer Science Texas Southern University,
1 Programming Language History and Evolution In Text: Chapter 2.
1 Type Checking Type checking ensures that the operands and the operator are of compatible types Generalized to include subprograms and assignments Compatible.
Programming Languages and Paradigms Imperative Programming.
Arithmetic Expressions
April 2, ICE 1341 – Programming Languages (Lecture #12) In-Young Ko Programming Languages (ICE 1341) Lecture #12 Programming Languages (ICE 1341)
1 Chapter 11 © 1998 by Addison Wesley Longman, Inc The Concept of Abstraction - The concept of abstraction is fundamental in programming - Nearly.
1 CS Programming Languages Class 22 November 14, 2000.
1 Copyright © 1998 by Addison Wesley Longman, Inc. Chapter 10 Abstraction - The concept of abstraction is fundamental in programming - Nearly all programming.
Procedure Definitions and Semantics Procedures support control abstraction in programming languages. In most programming languages, a procedure is defined.
CSCE 343 – Programming Language Concepts Welcome!.
Scott C. Johnson Lecturer Rochester Institute of Technology Spring 2016.
Programming Language History and Evolution
Zuse’s Plankalkül – 1945 Never implemented Problems Zuse Solved
CS 326 Programming Languages, Concepts and Implementation
Review: Chapter 5: Syntax directed translation
CSI 3120 Concepts of Programming Languages
11.1 The Concept of Abstraction
Programming Language History and Evolution
CS 3304 Comparative Languages Fall 2011
Chap. 6 :: Control Flow Michael L. Scott.
Expressions and Assignment Statements
Midterm Review In Text: Chapters 1, 2, 3, 5, 15.
Midterm Review In Text: Chapters 1, 2, 3, 11, 14, 15.
CPSC 388 – Compiler Design and Construction
Expressions and Assignment Statements
Final Review In Text: Chapters 1-3, 5-11,
Midterm Review In Text: Chapters 1-3, 5, 15.
Midterm Review In Text: Chapters 1-3, 5-7, 15, 16.
Final Review In Text: Chapters 1-3, 5-10, 12,
Final Review In Text: Chapters 1-3, 5-10, 12,
Final Review In Text: Chapters 1-3, 5-10,
Midterm Review In Text: Chapters 1, 2, 3, 5, 6, 15.
Midterm Review In Text: Chapters 1, 2, 3, 5, 15.
Midterm Review In Text: Chapters 1-3, 5-9, 15.
Final Review In Text: Chapters 1-3, 5-10,
Midterm Review In Text: Chapters 1-3, 5-6, 15.
CSCE 330 Programming Language Structures Ch.2: Syntax and Semantics
Midterm Review In Text: Chapters 1-3, 5-10, 15.
Chap. 6 :: Control Flow Michael L. Scott.
Final Review In Text: Chapters 1-3, 5-12,
Final Review In Text: Chapters 1-3, 5-16.
Final Review In Text: Chapters 1-3, 5-16.
Final Review In Text: Chapters 1-9, 11, 14, 15.
Languages and Compilers (SProg og Oversættere)
Final Review In Text: Chapters 1-3, 5-16.
Names and Binding In Text: Chapter 5.
Overview of Programming Paradigms
Final Review In Text: Chapters 1-3, 5-16.
Midterm Review In Text: Chapters 1-3, 5-9, 15.
Midterm Review In Text: Chapters 1-3, 5-11, 15.
Programming Languages, Preliminaries, History & Evolution
Expressions and Assignment Statements
Types and Related Issues
11.1 The Concept of Abstraction
Chapter 11 Abstraction - The concept of abstraction is fundamental in
Presentation transcript:

Final Review In Text: Chapters 1-11, 13-15

Chapters Covered Before Midterm: Since Midterm: Ch. 1—Introduction Ch. 2—History Ch. 3-Syntax/Semantics Ch. 4—Names/Binding Ch. 11—OOPLs Ch. 14—Functional PLs Ch. 15—Logic PLs Since Midterm: Ch. 5—Data Types Ch. 6—Expressions Ch. 7—Control Structures Ch. 8—Subprograms Ch. 9—Activation Recs Ch. 10—ADTs Ch. 13—Exceptions  Final Exam Review 

What is the exam like? See midterm Exam is comprehensive, but most material will be from chapters covered since the midterm At least one Prolog question requiring you to write code Some questions similar in style to homework questions  Final Exam Review 

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

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 

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 

Ch. 4: 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 

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

Ch. 6: 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 

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

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

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

Ch. 10: ADTs What are the main characteristics of an ADT? What is a “cover story”? What distinguishes ADT development from OO development? Separation of interface from implementation  Final Exam Review 

Ch. 11: Object-Oriented PLs What are the three defining characteristics of OOP languages? What are the other hallmarks of OOP? Definition of OOP terms Familiarity with Smalltalk Design issues for OOPLs  Final Exam Review 

CH. 13: Exceptions Basic terms and concepts Difference between the mechanism (how it is implemented) and design guidance (how it is used) Where are handlers defined, what is their scope? How is the handler for a given exception occurrence identified? Is continuation after the exception possible? Stack unwinding  Final Exam Review 

Ch. 14: Functional Programming What are the hallmarks of FP? Definition of FP terms Scheme syntax You’ll have to write a Scheme function  Final Exam Review 

Ch. 15: Logic Programming What are the hallmarks of LP? Definition of LP terms Prolog syntax You should be able to read Prolog code  Final Exam Review 