先日のアップデート修正点は、どうやら私が思ってた不具合とは別の問題だったらしい。
今までは、復帰後自分のIPを忘れた上、DHCPの再取得に失敗してた感じだったけど、こないだのアップデートを当てたらちゃんとデフォルトゲートウェイを忘れるようになった。
まあ、もうじきXPのバージョンアップできる予定だからどうでも良いや。
先日のアップデート修正点は、どうやら私が思ってた不具合とは別の問題だったらしい。
今までは、復帰後自分のIPを忘れた上、DHCPの再取得に失敗してた感じだったけど、こないだのアップデートを当てたらちゃんとデフォルトゲートウェイを忘れるようになった。
まあ、もうじきXPのバージョンアップできる予定だからどうでも良いや。
perlで@INCの中身をあさる。
find版
find `perl -e 'print join(" ", @INC)'` -type f -name "*.pm" -o -name "*.pl"
perl版
#!/usr/bin/perl --
use strict;
use warnings;
$, = $\ = qq[\n];
&recursive( $_ ) foreach @INC;
sub recursive {
my $top = shift;
opendir( DIR, $top ) or return;
my @elems = grep !( m{\A \.\.? \z}mosix ), readdir( DIR );
closedir( DIR ) or die;
foreach my $path ( map qq[$top/$_], @elems ) {
next if -l $path;
&recursive( $path ) if -d $path;
next if !( $path =~ m{\. (?:pm|pl) \z}mosix );
print $path;
}
}
perl版の方が多く出る気がするけど気にしない。
適当なuniq idを作る必要があり、考えてみた。
uniq idといいつつも、まあ、たまには重複してもOKとのこと。
なので、年月日時分秒m秒を使用することにする。
ただ、そのままでは長いので圧縮したい。
まずPerlで書いてみる。
use strict;
use warnings;
#Perlでどうやってmsecを得るかは気にしない
my $ymdhmsms = '0708191919440627';
#とりあえず「分」の個数分の配列があればOK
my @seed = ( '0' .. '9', 'a' .. 'z', 'A' .. 'Z', '_' );
#msec分=1000個の値があればいいので、「0-9」とかはいらない
my @mseed = ( 'aa' .. 'zz', 'AA' .. 'ZZ' );
#msecとそれ以外に分ける
my ( $ymdhms, $ms ) = $ymdhmsms =~ /\A ( \d+? ) ( \d{4} ) \z/mosix;
#適当に切った貼ったする
my $id = join '', ( map $seed[$_], grep $_, split /(\d{2})/, $ymdhms ),
$mseed[$ms];
#完成
print $id;
西暦は2060年くらいで終了する前提で。
さらにJS
http://pc.watch.impress.co.jp/docs/2007/0809/ms.htm
> ・PCを休止状態から復帰させると、PCがデフォルトゲートウェイのアドレスを忘れる
復帰後外に出れなくなることがあったけど、やっぱりバグだったか。
一日毎の内容しか見れないので、まったくといっていいほど役に立たない。
無理やりレスポンス解析してアナライザ作ろうかな。
安いDELLキーボードをばらしてみた。
内部には、なぜか上からは押せない位置にキーがついている。
面白そうだったので、そのままPCにつないでscan codeを取ってみる。
大抵は近くのキーと同じcodeを返すが、ひとつだけ「0x56」を返すものがある。
(左Shiftの右より)
検索してみると、これは古い規格(AXキーボード)の特殊キー(?)らしい。
こんな規格もう作ってないから互換なんか考えても仕方ないと思うけど。。。
あまってたからせっかくだしつけた感じ?
何かに使いたいけど、キーボードの改造はきついな。
JSをDOM解析終了後、画像読み込み前に実行することで各種問題をクリアする方法。
FF
->DOMContentLoaded
IE
->document.write("
//hoge hoge
Safari
->setInterval
LL魂のamachangのプレゼンで知ったけど、jQueryすごいな。
ただ、ユーティリティ関数はprototype.jsの方が豊富。
jQuery+ユーティリティ関数が正解かな。
もしくはjQuery(共存モード)+prototype.jsとか。
JSのライブラリ系ためさんと。
window.onloadの代替スクリプト
http://p2b.jp/index.php?UID=1152214827
こういうことやりたかったので非常に参考になる。
問題はいかにしてscriptタグが自分への参照かを判断する方法。
やはりファイル名か。。。
http://hail2u.net/blog/coding/set-argument-for-javascript-file.html
LL全般のイベントなので、全体的に薄め。
基調講演
古きよき時代の話。あんまりぴんとこない。
ハッカーの条件なんて参加者みんなわかってるんじゃない?
公演というよりは講義って感じ。さすが大学教授。
話はうまいと思うが、ここで求められてるのは講義ではなく公演。
LanguageUpdate
Io
結構面白そう。言語仕様小さくて制御構文すら後付け。
Python
リリーススケジュールや移行プロセスが明示されてるのは良いな。
これはPythonならではの利点かも。
Ruby
やはりうまい人のプレゼンは面白い。
1.8.10の話はわりと知ってたのでそこまで新規性なし。
Perl
5.8.10は一部6系の機能が使えるようになるらしい。
5.8系出て5年か。早いね。5.6系は10年たったっけ?
Lua
韓国系ネットワークゲームでは結構使われてるはず。
前遊んでたときに.luaとか見つけて多少いじってみた。
そのときは日本語の情報ないし、言語仕様も良くわからんかったので放置したけど、今ならもうちょっと攻めてみたいかも。
PHP
憎まれっ子世にはばかる?たたかれる内が花かと。
まともな言語がもうちょっとWebにフォーカスしてくれれば良かったのに。。。
オレ様言語の作りかた
Xtal
爆笑。天然なのか上がってたのか。でも、言語仕様は面白い。
結構使ってみたいけど、移植性とかライブラリはどんな感じなんだろう。
なでしこ
多きな言語仕様を、「日本語」という共通認識でカバーしてる感じ。
オブジェクト指向が「もの」という共通認識の下に、理解の範囲を絞っているように、「日本語」が理解の範囲を絞るのに非常に役に立ってる感じ。
ここまで言語仕様大きいと結構実用的かも。
そのほかはあまり実用的じゃない感じ。
一度テンプレート用DSLを作ったことあるけど、言語作るのって結構楽しい。
いかに後方互換を保ちつつ拡張するかや、速度を上げるか記述性を取るかとか楽しめる要素が多い。
VM魂
Java上で動くものより.Netで動くものの方が興味深かった。
LLでexe作れるならかなり良いかも。MSの今後の方針に期待。
キミならどう書く
JavaScript
さすがamachang。ものすごい実用的な感じのプレゼン用フレームワーク。
プレゼン自体も普通にすごい。
作成期間2ヶ月か。。。私は仕事しながらは無理だな。
XUL
高橋メソッドツール。進化してたんだね。
使いやすそう。簡単な社内プレゼントかで使ってみたいな。
それにしても、ブラウザ互換考えなくて良いと結構いろいろできるんだね。
Gauche
面白い。プレゼンツール以外の方向性もあるかも。
もしくは突っ込み系プレゼンツールとして、新しい流れを作るかも。
画像のみなのは惜しいな。
Lightning Talk
flowr
ブログパーツ系フレームワーク。
後付けで機能を追加できるのは面白い。
Flashをインターフェイスにすればまんまブログパーツフレームワークだな。
rhaco
見た目は普通にいけそう。
それにしてもPHPは国産フレームワーク多いな。フレームワーク自体多いけど。
この辺はJavaとPerlのあいのこみたいな感じがそうさせてるのかな。
Alinous-Core
Web特化言語っていくつかあるけど、あんまりはやってない感じがする。
特化しすぎるとそれはそれで使いにくそう。
その辺でPHPは唯一の成功例か。Webへの力点はこの辺が限界?
JavaFXScript
面白そうだけど、FlashとSilverlightの間に入れるとはちょっと思えない。
だた、うまくすれば第二のJavaScriptになれるかも、
でも、先にVM魂でMSの話聞いてたから、Silverlightに期待。
Flashも使用言語にAS以外が選択できれば良いのに。
D4R DirectX for Ruby
LLでWindowアプリ作るのは楽しそうだけど、問題はフォームのデザインをどうするかなんだよね。
フォームデザイナあればいいんだけど、手書きで配置するのはちょっときつい。
イメージファイト!
script要素を埋め込んだ画像の攻撃に関して。
ちょっと前に話があったけど、対策は結構めんどくさそう。
PHPがメインで話になってるけど、テンプレートとして画像ファイルを読み込む場合、基本的にどんな言語でも攻撃されうる。
私が作ったテンプレートエンジンは一応考慮してたけど、最近はやりのメイン言語埋め込み型のテンプレートエンジンはやばいね。
対策用apache moduleの話もちょっとあったけど、性能とか若干不安。
誤認率は低そうだけど。
抽選会
もうちょっとで取れそうだったけど、前の人が二つ取ってた。残念。
JSでDOMを解析する方法に関して社内でメールが流れてた。
そこで登場したのがこんなコード(概略。no syntax check)
var elem = (function(dom){ if ( dom.tagName == 'script' ) return (dom); return arguments.callee(dom.childNode) }(document))
無名関数の動的呼び出しの再帰版。。。