Just another Ruby porter,

〜2007年6月下旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2007-06-21 (Thu)

[Firefox] QuickRestart

RestartFirefoxがなくなってしまったので、 QuickRestart を入れた。

This simple extension adds a "Restart Firefox" item to the Tools menu. You can also use the Ctrl+Alt+R (1.0.1) keyboard shortcut, or the new toolbar button (1.1.0).


2007-06-22 (Fri)

電車が止まった

大宮駅に行ったらすごいことになっていたので、家で待機することにした。
そのままなかなか復旧しないので今日は休むことに。
運転士のミスっぽいね、これは。
20数年前の秋葉原でのケーブル切断事件の時を思い出した。


2007-06-23 (Sat)

[Comic] クレイモア

4巻まで借りてきて読む。アニメは比較的忠実に再現されているようだ。

[Emacs] elscreen

windows.elがEmacs 22で使えないので、 elscreen を試す。
だいたいわかった。しかしC-zが押しづらい。どのキーがいいか迷う。

ああ、元々はwindow-configuration-to-register(C-x r w)と
jump-to-register(C-x r j)なんてのがあるんだね。知らなかった。


2007-06-24 (Sun)

[Ruby] Ruby Quine Golf

実行すると自分自身を表示するというスクリプト。
自分自身を読み込んでそれをそのまま表示するというのは今回は反則ということで。

Ruby Quineをいろいろ考えたのでその軌跡をさらす。

$a=%q($><<"$a=%q(#$a);eval$a");eval$a

37B。たぶんどこかで見たPerl Quineからの移植。だから$aのまま。

a=%q($><<"a=%q(#{a});eval a");eval a

のほうが1B短いんだけど、すぐに変形してしまったので。

eval$a=%q($><<"eval$a=%q(#$a)")

31B。ここで$aをaにすると

eval a=%q($><<"eval a=%q(#{a})")

のようになぜか1B増えるという不思議。
このテクニックは覚えておくとたまに役に立つ。
ちなみにPerlだと

% perl -e 'eval$a=""'
Can't modify eval "string" in scalar assignment at -e line 1, at EOF
Execution of -e aborted due to compilation errors.

とエラーになるので$a=...;eval$aという形式にならざるを得ない。

eval$s="$><<'eval$s=';p$s"

26B。とつぜんpを使う方法を思いつく。なぜか変数名が$sに変わる。
ここはsにしてもサイズは同じ。

s="s=%p;$><<s%%s";$><<s%s

25B。そういえば%pなんてあったよねと思いつく。
今回は$sだと増えるのでsへ。

で、ふたを開けてみるとふらたんとまったく同じだった。
実を言うと

$><<s="$><<s=%p%%s"%s

で21Bじゃんと思ったのだが、優先順位の関係で()が必要となり25Bになる。
それも kskさんの作品 に出てきていて驚いた。

なんとなくpを使う方法をつきつめるともっと縮むんじゃないかという気がしてる。


2007-06-25 (Mon)

[Bash] Bash Quine

つづいてBash Quineの変遷。

まずはどこかにあったのをそのままぱくり75B。

read a<<'EOF';eval $a
echo 'read a<<'"'EOF'"';eval $a';echo $a;echo EOF
EOF

もういっちょぱくって56B。

q="'" r='echo q=\"$q\" r=${q}$r$q;echo eval \$r'
eval $r

それを変形して51B。

q=\' r='echo q=\\$q r=$q$r$q;echo eval \$r'
eval $r

さらに変形して48B。

q=\' r='echo q=\\$q r=$q$r$q\;eval \$r';eval $r

マニュアルとにらめっこしてたら素敵な変数を発見して19B。

echo $BASH_COMMAND

Perlの

print<<''x2,"\n"
print<<''x2,"\n"

というのを見て、Bashへ移植したらhere docのデリミタがなくてもいいことを発見して18Bに。

sed p<<_
sed p<<_

しかし psってのはすごいな。


2007-06-26 (Tue)

[Linux] 127.0.0.1 hostname localhost

/etc/hostsに

127.0.0.1 hostname localhost

というような記述があると、postfixのmain.cfで

inet_interfaces = $myhostname, localhost

があってもどっちも127.0.0.1になってメールを受け取れないという罠にはまった。
アップグレード後に受け取れないことに気づいたので、
やっぱyum upgradeでそんなことやってるってことだよなあ。


2007-06-27 (Wed)

[Twitter] Twitter spam?

なんか最近addしてくるのってspamまがいなものばかり。
あきらかに人じゃないんだよねえ。

[SVN] commit-email.rb

なんかたまにエラーになる。

NoMethodError: undefined method `diffs2' for Svn::Core::Property:Module

どうもaddされたときにむりやりdiffを取ろうとしてるような。


2007-06-28 (Thu)

今年初クーラー

家に帰ってから室温が30℃のまま下がらない。さすがにクーラーオン。

[Fedora7] yum調子悪し

最近yum updateすると

Could not retrieve mirrorlist http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-7&arch=i386 error was
[Errno 12] Timeout: <urlopen error timed out>
Error: Cannot find a valid baseurl for repo: fedora

というのばかりで全然更新ができない。面倒なので

% while ! sudo yum -y update;do sleep 60;done

として放っておくことにした。

ひょっとしてfastestmirror pluginがだめなんかな。


2007-06-29 (Fri)

[Google] Google Desktop for Linux

昨日入れたが、今朝になってもインデックス作成が終わらない。
cron.hourlyでの

Update should only be occurred every 24 to 30 (randomly) hours.

という小細工はdailyだとアクセスが集中するか?


2007-06-30 (Sat)

[Mail] PDF spam

最近PDFファイルだけ添付されてくるspamが増えてるけど、
これはどうやってGmailでブロックしたもんかな。
学習させても無駄のような気がするし。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!