2009-01-01から1年間の記事一覧

TechTalk#12

http://shibuya.pm.org/blosxom/techtalks/200911.html行く予定は無かったんですが、ひょんなことから参加することにしました。 まぁ会場が家の隣なので行こうかな的なノリですが。。。 滑り込み登録ズサ━━━━⊂(゚Д゚⊂⌒`つ≡≡≡━━━━!!

PHPで配列を連想配列に一発変換したい

PHPで"a=1,b=2,c=3"という文字列を連想配列にする場面があった。 Perlで書くとこんな感じ。 $data = "a=1,b=2,c=3"; $r = {split /[,=]/, $data}; PHPの場合、検索してみてもどうも一発でできないっぽいんだけど。 $data = 'a=1,b=2,c=3'; foreach (array_ch…

地震

寝ぼけなまこに「うわー結構揺れてるな〜(´ρ`)zZ」と思って、 揺れが収まってきたのでまた寝ようとした。 何時だろうと?と時計を見たら5時過ぎ。 その瞬間、阪神・淡路大震災が脳裏をよぎり、 一気にサーッと血の気が引いていくのが分かった。 また兵庫で…

voidコンテキストの使われ方

まあ、PP のモジュールが void context であることを判定につかってるケースってほとんどないんですけどね。 ないですねぇ。自分もそんなの書かないし。ちなみにClass-MOPではlib/Class/MOP/Method/Wrapped.pmでvoidコンテキスト関連の処理が書かれてますね…

動的パッチは一つのモジュールにまとめてuseした方が良いかも

言語的に云々という話ではなくて、複数人で開発するときにハマりそうなので(というかハマったので) 動的にパッチを当てるには # gotoするよ版 BEGIN { use UNIVERSAL::require (); if ( Foo->require ) { my $orig = Foo->can('func'); no warnings qw(red…

MANIFEST.SKIPを、最新のもの+自前のものにする

色々書きたいもの溜まってるけど、さっきやったExtUtilsに関する修正を書いてみる。 自前のMANIFEST.SKIPが無い場合、ExtUtils-Manifestに同梱されているものが使われる。で、自前のMANIFEST.SKIPを普通に作ってしまうと、ExtUtils-Manifestの方で更新されて…

Catalyst::Runtimeのバージョンチェックをしているようでしていない件

Catalyst::Helperが出力するMyApp.pmに、 use Catalyst::Runtime '5.70'; ってあるじゃないですか。 あまりHelper使わないから気付かなかったけど、良く見たら文字列になってるんですよね。ってことは、Catalyst::Runtimeバージョン5.70以上を要求してるわけ…

Module-Install-0.86のModule::AutoInstallが壊れてるくさい

Module-Install-0.87が出ました。この件直ってます。 Diff from Module-Install-0.86 to Module-Install-0.87 Module-Install-0.86 - Standalone, extensible Perl module installer - metacpan.orgperl Makefile.PLしたときに、 *** Module::AutoInstall ve…

CPAN封印

CPANPLUSに最大の敬意を示すため、CPANを使わないという信念に沿ったシステム(なんじゃそりゃ)では、 % rm -rf $HOME/.cpan % touch $HOME/.cpan % chmod 0000 $HOME/.cpan として、CPANを封印すると良いでしょう。(最後のchmodは余分だけど、CPANPLUSへ…

Perlから外部コマンドを実行する

最近Perlから外部コマンドを実行する場合は、openやsystemなどを使わずにIPC::Cmdを良く使っている。 特に深い理由はないんだけど、 IPC::Cmdは5.009005からコアモジュールに入っている それなりに綺麗に書ける $IPC::Cmd::VERBOSEを真にしておけば、実行す…

Debian_CPANTS.txtって何だ〜解決篇〜

http://wassr.jp/user/holidaysl/statuses/A1naJAQqnO ってつぶやいた事があるんだけど、犯人はModule/CPANTS/Kwalitee/Distros.pmでした。 こんな感じの t/04kwalitee.t を使ってます。 #! /usr/bin/env perl # # $Id$ # use strict; use warnings; use utf…

DBIx-Class-Schema-Loader-0.04005がインスコできない

テストがエラーになるんだけども、原因はDBIx::Class::ResultSetManagerが消えるからのようです。 http://blog.hide-k.net/archives/2008/10/dbixclassresult_1.phpめんどくせーのでDEVELOPER RELEASE入れてやったぜヒャッハー! % cpanp -i I/IL/ILMARI/DBIx-Clas…

mxmlを使わずにAS3だけでFlexアプリケーションを書く

全国のActionScripterの皆様こんにちは!id:holidays-lです!今回訳あって、AS3だけでFlexアプリケーションを作れるのかを試してみました。 こんなミニマムコードをMyApp.as package { import mx.core.Application; public class MyApp extends Application …

CX::P::E::FastCGI::LighttpdをCPANに上げた

もう1年以上前からになりますが、 lighttpdでファイルが存在しない場合にFastCGI-Catalystへ飛ばす設定とプラグイン - ヒルズで働く@robarioの技ログ このようなプラグインを使っていました。この度(主に自分都合により)このプラグインをCPANに0.0.1として…

PadWalkerという呪文でレキシカル変数を外から見る

Re: http://d.hatena.ne.jp/tokuhirom/20090319/1237428528 PadWalker(PadWalker - play with other peoples' lexical variables - metacpan.org) という呪文でも、こざかしいテクニックを打ち破る事ができます。 コードはこちら。 { package F; use stric…

Catalystのバージョンを上げたら文句言われた。

Catalystのバージョンを5.71にしたらこんなメッセージが出るようになりました。 [warn] Used regexp fallback for $c->model('View::TT'), which found 'MyApp::Web::View::TT=HASH(0x21d44d0)'. Relying on regexp fallback behavior for component resolut…

Re: Shipwrightちょっとだけ使ってみたよ - holidays-l開発ブログ

Shipwrightちょっとだけ使ってみたよ - ヒルズで働く@robarioの技ログ 本当にちょっとだけ使って、その後一切使ってないっす。 コミットされまくるのが嫌だ。

Re: lsコマンドをハックしてみよう (Yahoo! JAPAN Tech Blog)

lsコマンドをハックしてみよう - Yahoo! JAPAN Tech Blog 勉強用ならGNU Helloもオススメです。 GNU標準のディレクトリ構成 autoconf,automakeなどAutotoolsの使い方 メッセージ国際化libintl(gettext) オプション処理getoptの使い方 マルチプラットフォーム…

Re: ギークなお姉さんは好きですか 不正なメールアドレスを見抜く正規表現

ギークなお姉さんに初めてのトラックバック。 DTIブログ サービス終了のお知らせ の最後にあるfubaさんのnegative wordsを見て猛烈に最適化してみたくなった。 use utf8; use Regexp::Assemble; binmode STDOUT=>'utf8'; @words = split /\|/, 'ヘルプ|へる…

古典的で今更ではありますが、やり方を書いておきます。

とりあえずWindowsのExplorerでのやり方だけど、どのウィンドウマネージャでもできるんじゃないかな。 (自分はGeoShellにしてるのであんまり効果ないです)0.ターゲットを決める。 1.タスクバー・通知領域に出ているプロセスを全て落とす(起動した状態に戻…

jsl-0.3.0をCygwinでビルドした。

お〜ぅっ!ずっとはてなの下書きに入ったままだったよ〜! JavaScript Lint Windows Binary入れてもいいんだけど、cygpathとか使うの面倒なのでCygwin Buildした。 % curl http://www.javascriptlint.com/download/jsl-0.3.0-src.tar.gz | tar zxv % cd jsl-…

IRCのバージョンアップ

2008年にIRC Serverの新版がリリースされているので追従。(本家)では2.11.2p1まで出ていますが、ちょっと安全策で日本語パッチが出ている2.11.1p1にしました。 久しぶりにSPECファイルがんばって書いたけど、こっちにはコマンドラインで書いておきます。 $…

bitlbee-1.2.3をCygwinでビルドした。

bitlbee-1.2.7はパッチ無しでCygwinビルドできました。 普通に./configure && make install すればOK。 - BitlBee - Home bitlbee-0.92-setup.exeというWindowsバイナリもあるけど、cygwin1.dllが同梱されててバージョンの異なるcygwin1.dllが混ざってしま…

明けましておめでとうございます!

本年も宜しくお願い致します。