Module 13 Study Guide
Learning Objectives
- Understand general characteristics of subprograms and the terminology used to describe subprograms
- Explain the difference between formal and actual parameters
- Understand and be able to use the various mechanisms for binding actual and formal parameters when a subprogram is called
- Understand how local variables are declared in subprograms in various languages
- Explain semantic models of parameters passing
- Explain and be able to execute programs using various parameter passing mechanisms, including pass-by-value, pass-by-result, pass-by-value-result, and pass-by-reference
- Understand how various parameter passing mechanisms are implemented
- Understand the interaction between parameter passing mechanisms and parameters with value and reference types, and be able to execute programs exhibiting this interaction
- List the parameter passing mechanisms used in various popular languages
- Explain the importance of type checking parameters
- Explain why passing multi-dimensional arrays presents problems and how these problems are solved in various languages
Resources
- CPL 9.1-9.5
- Video lectures: Bowers (playlist), Lam (playlist)
- Slides: Lam
Lab
Please complete the lab for this week: parameters
Deliverables
The test for this module will take place online on Gradescope on Friday. You will have an opportunity to re-take a different version of the same test next week. If you choose to do the re-take, your grade for this module will be the higher of the two scores.