From: Dave Thomas <Dave / thomases.com>

> "Conrad Schneiker" <schneiker / jump.net> writes:
>
> > Meanwhile, for point of reference, what do you and Dave Thomas think
about
> > "invoke"?
>
> I guess you really, really don't like 'yield', eh?

Actually one "really don't" will suffice, but no, I really don't like
'yield' here, especially since it denotes such a very important and powerful
Ruby feature, and yet using 'yield' here strongly violates the principle of
(semantic) least surprise. It is very un-Ruby-like. To me this seems like
the linguistic analog of Microsoft using '\' insead of '/' for file path
names.

(I've also been involved in watching software usability studies involving
the ordering and wording of instructions and such, and my instincts are that
'yield' spells 'trouble' here.)

Everywhere else, Ruby uses reasonably semi-intuitive names for its featues,
but 'yield' seems to be a very _unnatural_ term to use here.

Of course we can get used to any term by familiarity, as Perl users do for
'bless' and as Lisp users do for 'car' and 'cdr' and so on.

But I strongly prefer to remove otherwise completely unnecessary causes for
such things as FAQ "1.11 I can't understand Ruby even after reading the
manual!". Let's be more proactively user friendly toward the soon to be
rapidly increasing number of people that might otherwise express such
sentiments, as the Ruby user community population boom starts to really take
off world wide, over the next few years.

Finally, Ruby is still a young language, and it will acquire many additions
over the years. To make it as easy as possible for people to learn and
understand the inevitably bigger Rubys of the future, it is very important
to make sure the core of Ruby is a well-polished gem now.

> To me, 'invoke' is what you do to functions or methods.

OK.

Then how about 'callback'?

'callback' is a  non-combinational word (or at least it was written that way
in the developerWorks Ruby article, albeit in a somewhat different context).

Moreover, 'callback' it is fortuitously mnemonically quite close to
'callBlock', which is presumably otherwise semantically OK, despite being
rejected for lexical reasons.

Conrad