[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Baby-Doe and friends
I applaud Kent's cogent attempt to find a rational terminology.
His point about the confusing uses of "VALUES" is well-taken.
Here is another approach to the question. Consider an intuitive
model in which arguments are "passed down" and values are
"returned up". (Yes, I know this runs afoul of the One True Way
of tail-recursion, but it suits my purposes here.)
Then we can describe the two proposed procedures in a reasonably symmetric
fashion: VALUES takes a set of objects headed downward as arguments and
bounces them back upward as values. (Think of a mirror. I would have said
"reflects" instead of "bounces" except the former already has another
technical meaning.) BABY-DOE takes a set of objects headed upward as
values and bounces them back downward as arguments.
I believe this symmetry to be quite real; the procedures seem asymmetric
only as a consequence of the asymmetry of function call notation, rather
than as a consequence of their intrinsic behaviors.
Therefore, if we retain the name VALUES for the one, one might reach the
logical, if not entirely aesthetic, conclusion that BABY-DOE should be