トップ «前の日記(■2003-11-02) 最新 次の日記(■2003-11-10)» 編集

どんぞこ日誌

2003|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|07|08|12|
2007|01|04|08|12|
2008|01|02|03|04|06|07|08|10|11|12|
2009|01|02|04|05|06|07|08|09|11|12|
2010|01|03|04|07|08|10|11|12|
2011|01|02|03|04|05|06|07|08|10|12|
2012|01|02|03|05|06|07|08|09|10|
2013|01|02|07|08|09|
2014|08|09|
2015|08|
2016|06|07|12|
2017|01|03|08|
2018|03|
2022|03|

同人関連(どんぞこ楽屋) | 旧い雑文   


■2003-11-06 口内炎がなおらない

* [Perl] Perlで"This is a pen"->reverseB!

  Scalar::Propertiesというのがありまして、何とはなしにドキュメントをみてみたら面白そうなものでした(そして、たぶん役には立たない)。
#!/usr/bin/perl -w
use strict;
use Scalar::Properties;
 
my $bar = 'Maka'->sleep(1); # プロパティ
my $foo = 0->true;          # 0に真値をセット
if ($foo and $foo == 0){
    print "0 なのに 真\n";
}
 
print "Hello Work"->length; # 他にも色々
print $bar->is_sleep;       # true
てな具合で。問題は演算子をオーバーライドする関係で変数展開やエスケープシーケンスに悪さするところ。ソースを弄る必要があるかも。和訳したのでそのうちperldocjpに登録します。

* [Perl] Scalar::Properties追記B!

ソースの128行目、_valueを_interpにして129行目を削除したら解決しました。あと演算子のオーバーロードじゃなくて、定数のオーバーロードでした。このモジュールと同様のものとして5.8.1以降ならautobox.pmというのもあります。

* [Perl] 5.8.2B!

Perl 5.8.2perldeltaによると5.8.1と5.8.0のバイナリに互換性が無い場合があったが、5.8.2は5.8.0と互換があると。

本日のツッコミ(全2件) [ツッコミを入れる]
_ (■2003-11-08 23:33)

お疲れですかービタミンBをとりませう>口内炎

_ まかまか (■2003-11-10 23:13)

おかげさまで、だいぶよくなってきました。

[]