U of I CS 421 - Programming Languages and Compilers (35 pages)

Previewing pages 1, 2, 16, 17, 18, 34, 35 of 35 page document View the full content.
View Full Document

Programming Languages and Compilers



Previewing pages 1, 2, 16, 17, 18, 34, 35 of actual document.

View the full content.
View Full Document
View Full Document

Programming Languages and Compilers

64 views

Lecture Notes


Pages:
35
School:
University of Illinois
Course:
Cs 421 - Natural Language Processing
Natural Language Processing Documents

Unformatted text preview:

Programming Languages and Compilers CS 421 Elsa L Gunter 2112 SC UIUC http www cs uiuc edu class fa06 cs421 Based in part on slides by Mattox Beckman as updated by Vikram Adve and Gul Agha Semantics Expresses the meaning of syntax Static semantics Meaning based only on the form of the expression without executing it Usually restricted to type checking type inference Elsa L Gunter Dynamic semantics Method of describing meaning of executing a program Several different types Operational Semantics Axiomatic Semantics Denotational Semantics Elsa L Gunter Dynamic Semantics Different languages better suited to different types of semantics Different types of semantics serve different purposes Elsa L Gunter Operational Semantics Start with a simple notion of machine Describe how to execute implement programs of language on virtual machine by describing how to execute each program statement ie following the structure of the program Meaning of program is how its execution changes the state of the machine Useful as basis for implementations Elsa L Gunter Axiomatic Semantics Also called Floyd Hoare Logic Based on formal logic first order predicate calculus Axiomatic Semantics is a logical system built from axioms and inference rules Mainly suited to simple imperative programming languages Elsa L Gunter Axiomatic Semantics Used to formally prove a property post condition of the state the values of the program variables after the execution of program assuming another property pre condition of the state before execution Written Precondition Program Postcondition Source of idea of loop invarient Elsa L Gunter Denotational Semantics Construct a function M assigning a mathematical meaning to each program construct Meaning function is compositional meaning of construct built from meaning of parts Useful for proving properties of programs Elsa L Gunter Transition Semantics Form of operational semantics Describes how each program construct transforms machine state by transitions Rules



View Full Document

Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view Programming Languages and Compilers and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Programming Languages and Compilers and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?