1 / 23

CS 403 – Programming Languages

CS 403 – Programming Languages. Class 28 - December 7, 2000 Review & Final words. Final Exam notes. Thursday, Dec 14, 8:00AM Format: Fair number of multiple choice questions Scantron forms! Bring your #2 pencils! Might be some short discussion (like previous exams). Final Exam notes.

maik
Télécharger la présentation

CS 403 – Programming Languages

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 403 – Programming Languages Class 28 - December 7, 2000 Review & Final words

  2. Final Exam notes • Thursday, Dec 14, 8:00AM • Format: • Fair number of multiple choice questions • Scantron forms! Bring your #2 pencils! • Might be some short discussion (like previous exams)

  3. Final Exam notes • Comprehensive • About 1/3 of exam will cover material in chapters 1-8 (from the first exam). • About 2/3 of exam will cover material in chapters 9-11 & 13-15. • Examination Aid: You may bring one 8 ½ by 11 sheet, handwritten on both sides as an aid to the exam.

  4. Some Example MC Questions • When Ada handles an exception, where does execution continue? (Pick the best option.) • The next line of code after the one that generated the exception. • The next line of code in the procedure that called the exception-causing procedure. • The next line of code after the END of that block. • The program terminates. Execution does not resume.

  5. Some Example MC Questions • Given this code (some call & return), which parameter passing method would give the output: “87 45 15”? • Pass by value • Pass by value-result • Pass by result • Pass by name • None of these will give that output.

  6. Some Example MC Questions • Given this code (some call & return) and assuming “pass by value-result”, what would the output be? • 453 27 • 236 -3 • 96 82 • 1024 256 • None of the above

  7. Questions you won’t see! • Which language did we not study in class? • LISP • Scheme • Haskell • Prolog • None of the above

  8. Questions you won’t see! • Which language did we demonstrate at length in class, but you didn’t have to program an assignment in it? • FORTRAN • ML • Haskell • Prolog • None of the above

  9. Questions you won’t see! • …? • LISP • Scheme • Haskell • Prolog • None of the above

  10. Quick Review of Topics • Chapter 1 • Language Evaluation Criteria • Language Design Trade-Offs • Implementation Methods • Chapter 2: Historical Overview • Chapter 3: Syntax & Semantics • Grammars • Parse Trees

  11. Review of Topics • Chapter 4: Names, Bindings, Type Checking and Scopes • Binding & Binding Times • Type checking & Strong Typing • Type compatibility • Scope & Lifetime • Referencing Environments

  12. Chapter 5: Data Types • Primitive data types • Character & String types • User defined types • Array types • Associative types • Record types • Set types • Union types

  13. Chapter 6: Expressions & Assignment Statement • Arithmetic expressions • Overloaded operators • Type conversions • Relational & Boolean expressions • Short circuit evaluation • Assignment Statements • Mixed-mode assignment

  14. Chapter 7: Control Statements • Compound statements • Selection statements • Iteration statements • Unconditional branching • Guarded commands

  15. Chapter 8: Subprograms • Design issues • Local referencing environment • Parameter passing methods • Subprograms as parameters • Overloaded subprograms • Generic subprograms • Separate & Independent compilation • Accessing non-local environments • User-defined overloaded operators

  16. Chapter 9: Implementing Subprograms • General semantics of calls & returns • FORTRAN 77 subprograms • ALGOL-style subprograms (and everything since ALGOL) • Blocks • Implementing Dynamic & Static scoping • Implementing subprogram names as parameters

  17. Chapter 10: ADTs • Abstraction • Encapsulation • Parameterized ADTs • Language examples

  18. Chapter 11: OO Programming • OOP • Design issues for OO languages • Smalltalk • Support for OO in • C++ • Java • Ada

  19. Chapter 12: Concurrency • Skipped! • You’ll see this in CS 426 Operating Systems

  20. Chapter 13: Exception Handling • Basic issues • Exception handling in • PL/I • Ada • C++ • Java

  21. Chapter 14: Functional Programming Languages • Basic ideas… • ML

  22. Chapter 15: Logic Programming Languages • Basic issues • Prolog

  23. Studying for the exam • You may study in groups of 3-5. • You may post up to 5 sample exam questions from each group. • I’ll give one point for each sample question, up to a max of 5, to count as bonus points on the exam. • Post no later that Tuesday 5PM.

More Related