Student Understanding of Aliasing and Procedure Calls

Preston Tunnell Wilson, Kathi Fisler, Shriram Krishnamurthi

SPLASH Education Symposium, 2017


Procedure (or method) calls are a basic computation mechanism found in virtually every language. A procedure call may or may not create aliases for parameters. Understanding aliasing is critical for comprehending how programs will behave, with impact on other concepts such as parallelism.

In this paper we study the awareness and descriptions of aliasing behavior in two college-level audiences. The paper measures their understanding of aliasing, analyzes their written explanations of procedure calls, and identifies problems with their knowledge. In particular, we show that even upper-level students suffer from difficulties that instructors might have assumed have long since been addressed.



These papers may differ in formatting from the versions that appear in print. They are made available only to support the rapid dissemination of results; the printed versions, not these, should be considered definitive. The copyrights belong to their respective owners.