- Lectures notes from start of course through October 17,2000.
- Textbook: Chapters 1, 2 (31-34,39-48), 3(106-156), 11 (11.1,624-648).
- Homework assignments (all of those due before midterm exam date).
- Programming assignments (PERL, PL Re-design).
The exam is closed book, closed neighbor and you will have the full class period to work. The exam will have a heavy emphasis on applying the concepts we have discussed in class, with only a few if any questions that are just knowledge feedback.
Example questions:
- Short answer regarding general concepts: compilers, interpreters,...
- Write/read regular expressions.
- Draw a finite state machine for a regular expression.
- Explain the set of strings that a finite state machine accepts.
- Write/read context free grammars.
- Draw a parse tree or derivation for a given string.
- Determine whether a given string is accepted by a grammar.
- Give example strings generated by a grammar.
- Show that a given grammar is ambiguous.
- Show the output or indicate the variables accessible at different points
in a program based on static versus dynamic scoping rules.
- Show the implementation of static scoping via static links versus display.
- Show the implementation of dynamic scoping via dynamic links (deep access)
versus a central reference table (shallow access).
- Show the results of execution under deep binding versus shallow binding when
procedures passed as parameters.
- Indicate where a particular item would most likely be stored: stack, heap,
static store
- Explain how some of the extra features of languages will affect scoping
(eg, scope resolution operator, etc from class handouts/slides).
- Basic format of lex/flex and bison/yacc specification and their capability.
- Give an example that demonstrate overloading, polymorphism, or generics.
- Given a segment of code, explain how it demonstrates a particular concept
like operator or function overloading, polymorphism, overriding, generics.
- General questions on operational, denotational, and axiomatic semantics:
advantages, disadvantages, general approach.
- write or modify a small Prolog code segment
- read a Prolog code segment and indicate the answer given for a particular
query.
- show part of the search tree for a given Prolog program and query.
- explain how to read a particular prolog clause
The questions are NOT true/false or multiple choice. Instead, partial
credit will be given when possible on any question in the exam.
Review your lecture notes, assignments, and textbook chapters. Actually do some problems of the form described above to determine whether you can apply your knowledge.
This document was generated using the LaTeX2HTML translator Version 98.1p1 release (March 2nd, 1998)
Copyright © 1993, 1994, 1995, 1996, 1997, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
The command line arguments were:
latex2html -split 0 midterm.rev.tex.
The translation was initiated by Lori Pollock on 2000-10-15