FinalStudyGuide

FinalStudyGuide - CSE 262 Study Guide, Final Exam on...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
CSE 262 Study Guide, Final Exam on MONDAY, MAY 07, 2007, 04:00-07:00 PM, NV 003 (i.e. Neville Hall 003) Spring 2007 The exam will focus on the contents that have been covered by the lectures and their corresponding textbook materials. The following list illustrates major, but not all , points that have been included in the lecture contents; and please use the lecture slides posted at the Blackboard System as a reference. The types and difficulty level of the final exam questions are similar to those of the midterm exam and homework questions. Preliminaries (Chapter 1) Know the purpose of designing different programming languages. Know why new programming languages are created. You will not need to know the steps along the evolution of programming languages. You will not need to know the design details of “historical” languages not discussed later. Know the categories of programming languages: imperative, functional, logic, and object-oriented, and their representative languages. Know the different implementation methods for programming languages: compiled, interpreted, and hybrid, especially the compilation process. Know the different criteria for which programming languages are judged: readability, writability, reliability, etc., and how they represent trade-offs. Syntax and Semantics (Chapter 3 and Chapter 4) Know the difference between syntax and semantic definitions of a programming language. Know what a string, alphabet, lexeme, and token are in the context of defining a programming language. Know the difference between a recognizer and a generator. Know the BNF and EBNF methods of describing syntax, and the components of these methods. Know how to derive a string/sentence from a grammar, and how to determine if a string/sentence is valid for a particular grammar. Know how to generate a parse tree for a string given a grammar. Know what makes a grammar ambiguous, why that is a problem, and methods to solving the problem. Know the major stages in a compilation process. Know how to remove left recursions and implement a recursive-descent parser. Know the difference between static and dynamic semantics. Know what an attribute grammar is, and how it specifies semantics.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Know the difference between synthesized and inherited attributes. Names, Bindings, and Scopes (Chapter 5)
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 5

FinalStudyGuide - CSE 262 Study Guide, Final Exam on...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online