CallByCRVsMacroVsName.init() CallByCRVsMacroVsName.expression CallByCRVsMacroVsName.bycprOutput CallByCRVsMacroVsName.bymacOutput CallByCRVsMacroVsName.bynamOutput

Consider the following program written in generic pseudocode:

expression

What is the output printed to the console when this program is executed using call-by-copy-restore, call-by-macro, and call-by-name? The answer has three components, each of which is a list of integers to be entered below.

Output for call-by-copy-restore:
Output for call-by-macro:
Output for call-by-name:
[ $('#bycprAnswer').val(), $('#bymacAnswer').val(), $('#bynamAnswer').val() ]
return CallByCRVsMacroVsName.validateAnswer(guess);

Since this program is not a SLang program, each value that is output to the console is an integer, not a SLang 2 denoted value.

Consecutive integers in each list must be separated by at least one blank space.

It may be helpful to trace the execution of this program on paper with the graphical representation of the memory that we used in class.

The correct answer is:
Output for call-by-copy-restore: answerBycpr
Output for call-by-macro: answerBymac
Output for call-by-name: answerBynam