けいじゅ@SHLジャパンです. 

In [ruby-list :00340 ] the message: "[ruby-list:340] Re: operator ",
on Jul/23 15:07(JST) matz / caelum.co.jp (Yukihiro Matsumoto) writes:

>さして深い理由は無いのですが,あえていえば,通常の強度の否定
>演算子は`!'があるということと,

それもいいたかったんですよ!! 

`!'は使い勝手が良くないですよね.

if ! File.directory? file and File.symlink? file then
  ...
end

はエラーになります. 

if ! (File.directory? file) and File.symlink? file then
  ...
end

または,

if ! File.directory?(file) and File.symlink? file then
  ...
end

としなくてはなりませんよね. 使い勝手は notとほとんど変わらないと思いま
す.

rubyの仕様(プログラミングスタイル)では, `&', `|', `!' などは使いやすく
ないですよね.

あと, 別の話しですが:

if ! File.directory? (file) and File.symlink? file then
  ...
end

これがエラーになるのも気になります. 

>  if not ....
>でunlessが表現したかったことでしょうか.

ああ. なるほど... いいたいことが分からないでもないのですが...

>より適切な優先順位がありましたら,変更します.

簡単に, 優先順位を変えるのも何なんですが, and/or < not の方が良いよう
な気がします.

__
..........................................石塚 圭樹@SHLジャパン(株)...
------------->アドレス変わりました!! e-mail: keiju / shljapan.co.jp <----