On Fri, 2002-09-06 at 15:44, dblack / candle.superlink.net wrote:

> There's also a useful distinction to be made, I think, between active
> and passive knowledge of the language.  When one writes code, one can
> restrict oneself to "if not" (or "if !") if one wishes to; there's no
> imperative to alternate or rotate among synonyms.  So then the only
> question remaining is... can one understand other people's code, even
> when they sometimes say "unless" and sometimes say "if not" (or
> "indexes" and "indices", or whatever)?
> 
> And the answer is... well, I can only answer for myself: I have no
> memories of finding Ruby's synonyms to be a stumbling block to reading
> other people's code (all else being reasonably clear :-)
> 

There is also a subtle but I think significant difference in
communication of the developer's intent btween "if not" and "unless". 

do_something unless condition

very strongly communicates (to me at any rate) that the default action 
is do_something.

While do_something if not condition may have the same practical result,
it is not, again to me, as strong a statement of intent.

Call it "clarification." :-)

Regards,

Kent Starr