Organization of Programming Languages
Topics for Final Examination

  1. From review questions on pages 33-34.  Four questions from questions 3, 4, 6, 9, 10, 12, 13, 15, 17, 21, 23, 24, 26, 29.
  2. From the problem set on pages 34-35.  Answers should be from 1/3 to 1/2 page long.  3, 6, 7, 12, 16.
  3. Describe the development of FORTRAN from FORTRAN 1 to FORTRAN 77

  4. (substute other language sequences for FORTRAN)
  5. From review questions on pages 102-103.  Three questions from questions 21, 22, 26, 28, 33, 36, 38, 44, 45, 46.
  6. Define syntax and semantics
  7. Program trace -- dynamic scoping and static scoping
  8. Scoping in Ada
  9. Scoping in C++
  10. Attributes of variables
  11. Activation stack / heap
  12. Give an example of explicit heap-dynamic variables.
  13. What is static binding.  Give an example.
  14. What is dynamic binding.  Give an example other than variable value.
  15. Name a language that is not strongly typed.  Indicate why
  16. What is strongly typed.
  17. What is type checking?
  18. What is the difference between key words and reserved words?
  19. Give the advangages and disadvantages for a language being case-sensitive.
  20. Give EBNF for Ada statements (if, assignment, loop)
  21. What is recursion.  Trace a recursive program.
  22. Write a complete Ada program.
  23. When and why was Ada developed?
  24. What is syntax?
  25. What language was used to describe Algol 60?
  26. Name the operations of BNF.
  27. To whom do the B and the N in BNF refer?  What were they known for?
  28. Give a derivation (left-most, right-most)
  29. Give a parse tree.
  30. What are the three most common extensions of BNF to give EBNF?
  31. Give ENBF for: a) a floating point constant.  b) a statement construct.  c) something else.
  32. What is semantics?  Give an example of the difference between syntax and semantics.
  33. What is an ambigous grammar?  Give an example.
  34. Give an example of a metalanguage.
  35. What is the difference between left recursive and right recursive grammars?
  36. What is the difference between left recursive and right recursive grammars?
  37. Statement-Level Control Structures
  38. Compound Statements
  39. Selection Statements
  40. Iterative Statements
  41. Writing assembler code that would simulate control statements
  42. Writing procedures to parse control statements
  43. Writing procedures to produce assembler code to generate control statements
  44. Questions on Language Presentations and Papers
  45. A detailed about your own language and specific topic.
  46. Any other related questions.