Perlにだって必要ありません;
% perl t/semicolon.pl Hello, Ruby. What's up? Welcome back, Perl; % cat t/semicolon.pl no semicolon; print "Hello, Ruby. " print "What's up?\n" use semicolon; print "Welcome back, Perl;\n";
no semicolon;そのものには;が必要だけど(^_-;
pragmaがないrubyにはできますまいd(^o^)b
Dan the Rubyphiliac Perl Monger;
注意:CPANには上がってません。もちろん標準装備ではありません
package semicolon;
use 5.008001;
use strict;
use warnings;
our $VERSION = sprintf "%d.%02d", q$Revision: 0.1 $ =~ /(\d+)/g;
use Filter::Util::Call;
my %opt = ();
sub import{
my $class = shift;
filter_del();
%opt = ();
}
sub unimport{
my $class = shift;
%opt = map { $_ => 1 } @_;
filter_add(sub{
my $status = filter_read();
if ($status > 0){
$_ =~ s/#.*//;
$_ =~ s/([\n\r])/;$1/;
}
return $status;
});
}
1;
__END__
P.S. Audreyがおでかけから戻って来たので、これを見せたら、Module::Compileをいじってくれたので、これができるようになりました。CPANに反映されるのはもう少し先ですが、pugs付属の方はすでにcommitされてます。速っ。
package semicolon;
use strict;
use warnings;
use Module::Compile -base;
sub pmc_use_means_no { 1 } # これでuseとnoを反転
sub pmc_compile{
my ($class, $source) = @_;
$source =~ s/#.*//mg;
$source =~ s/([\n\r])/;$1/mg;
$source;
}
1;
You^H^H^H We are so evil! No wonder matz-san hates pragmas ;-)
Dan the Pragmatic