Perl
perl -ne '/Host (\d+\.\d+\.\d+\.\d+) has been blocked/&&push(@{$h{$1}},$_); END{map{printf"%d:%s\n",@{$_}}sort{$b->[0]<=>$a->[0]}grep{$_->[0]>1}map{[scalar@{$h{$_}},$_]}keys%h}' ~/Mail/root/swatch/*これは何をしているかというと、 Host xxx.x…
s/"/\"/g実際のソースコード*1より。デバッグしている最中に顔に見えることに気がついてちょっとウケた。残念ながら日本語Windowsだとフォントの関係でそうは見えないかもしれないけど。 *1:文字列の中の引用符の前にバックスラッシュを挿入する処理の部分
Perl 5.6だとスレッドが使えなかったので、forkして子プロセスを作るという伝統的なスタイルで実装した。単にforkしただけだと、子プロセスに値を渡すことはできても戻り値を受け取ることができないから、その部分にプロセス間通信(Unix-Domain TCP)を使って…
http://naoya.dyndns.org/~naoya/mt/archives/001473.html結城さんのhttp://www.hyuki.com/tf/20041209161614.htmlという記事を受けて。 my $developer = shift || 'naoya';この書き方*1、カッコいいなあ(笑)。 *1:注:Perlをよく知らない人へ。これは要する…
http://mayah.jp/archive/programming/ruby.html (from http://www.dioscroy.ne.jp/~wataru/tdiary/?date=20041203#p01)今までRubyはPerlの変種という認識だったけど、これを読んだらむしろLispに近いのかもしれないと思うようになった。より正確には、Ruby=…
今までいろいろCGIを作ってきて、CGIもPerlも大抵のことは分かってるつもりだったんだけど、久しぶりに大ハマリしてしまった。 use CGIするとdieがCGI::Carp::dieに置き換わる(ことがある) いつも全体をevalで囲ってデバッグにdieを使っているんだけど、突…
こんなスクリプトを作ってみた。 これは何か? はてなアンテナの設定をバックアップする。 詳細 はてなアンテナには、lirs形式、RSS形式などでアンテナデータをエクスポートする機能があるが、グループや更新チェック範囲などは保存されない。このスクリプト…
http://naoya.dyndns.org/~naoya/mt/archives/000833.htmlそれのトラックバック記事 お気に入りサイトのRSSを自作して楽しむhttp://www.banana21.com/blog/archives/0401140254.html とりあえずリンク。はてなアンテナの代替となるものを以前から探していた…
文字列処理はだいたいPerlでやることが多いんだけど、諸事情でEmacs上でできた方が便利なときがあって、そのためのメモ。 m// ==> string-match s/// ==> string-matchしてreplace-match split ==> split-string join ==> mapconcat while (<>) {} (defun fo…
$buf=pack("C*", map { ord(getc(IN))^($_&0xff) } (0 .. $size-1)); foreachでもできるけど右辺に余計な変数がないのが美しい。TMTOWTDI。
http://www.perl.com/lpt/a/2004/01/16/regexps.html(from: www.textfile.org)Regexp::English ってそれ自体が別の言語みたいだ。この辺、なんとなくLispっぽくて面白い。
http://d.hatena.ne.jp/koseki/20031015#1066180360 foreachを使わないっていうのが何を意味しているのかいまいち不明だが、速度を気にするならハッシュを使って foreach (@a) { $h{$_}|=1 } foreach (@b) { $h{$_}|=2 } grep { $h{$_}==3 } keys %h; とすれ…
http://www-6.ibm.com/jp/developerworks/linux/010706/j_l-p101.html Perlのワンライナーは自分も良く多用する。かなり複雑なことがシェルからのたった1行のコマンドでできるからハマると病み付きになる。
http://www.cpan.org/misc/japh これも一種のアスキーアート?
http://docomo.dyndns.org/module2rpm.htm
http://www.perl.com/pub/a/2003/06/13/design1.html DP/MLからの情報。簡単に読んだ限りの理解では、Perlはオブジェクトじゃなくて言語仕様でパターンをサポートしてますよという話。 "If a pattern is really valuable, then it should be part of the core…