On 13/04/07, Moritz Lenz <[EMAIL PROTECTED]> wrote:

If you want a boolean, use
? $fn ~~ :x
or something.

Definitely "or something". Unary ? has the wrong precedence there.
You could write:

   for @files -> $file {
       printf "%-70s  %s  %s  %s\n",
           $file,
           true $file ~~ :r,
           true $file ~~ :w,
           true $file ~~ :x;
   }

which could, of course be hyperoperated:

   for @files -> $file {
       printf "%-70s  %s  %s  %s\n",
           $file,
           true<<  $file <<~~<< (:r, :w, :x);
   }


Maybe there also needs to be a "boolean" conversion for printf
(perhaps %t for true?):

   for @files -> $file {
       printf "%-70s  %t  %t  %t\n",
           $file,
           $file ~~ :r,
           $file ~~ :w,
           $file ~~ :x;
   }

Which leads to:

   for @files -> $file {
       printf "%-70s  %t  %t  %t\n",
           $file,
           $file <<~~<< (:r, :w, :x);
   }


Damian

Reply via email to