Exploratory Study of the Impact of Value and Reference Semantics on Programming

TR Number



Journal Title

Journal ISSN

Volume Title


Virginia Tech


In this thesis, we measure the impact of reference semantics on programming and reasoning. We designed a survey to compare how well programmers perform under three different programming paradigms. Two of the paradigms, object-copying and swapping use value semantics, while the third, reference-copying, uses reference semantics. We gave the survey to over 25 people. We recorded number of questions answered correctly in each paradigm and the amount of time it took to answer each question. We looked at the overall results as well as the results within various levels of Java experience. Based on anecdotal evidence from the literature, we expected questions based on value semantics to be easier than questions based on reference semantics. The results did not yield differences that were statistically significant, but they did conform to our general expectations. While further investigation is clearly needed, we believe that this work represents an important first step in the empirical analysis of a topic that has previously only been discussed informally.



surveys, aliasing, java, reference semantics, value, empirical analysis