■2005-03-27
* [今月のAcme] Acme::EverythingとAcme::RemoteINC
前回取り上げると書いたので、Acme::Everything。「究極のランタイムローダーで、1行このモジュールをuseするだけで、CPANにある7億5000万行におよぶコードを効率よくロードできます」。例えばあるメソッドを呼び出したとして、そのメソッドの属するクラスが見つからなければエラーになります。このときこのモジュールを導入しておくと、即座にCPANPLUSがその場でCPANモジュールをインストールしてしまうという仕組み。
似たようなものにAcme::RemoteINCがありますが、こちらは@INCにftpを操作するオブジェクトを入れて、リモートにあるモジュールをダウンロードする代物。Perlがモジュールをロードする際に、配列@INCにあるパスを順に探すのはよく知られていることです。それよりも若干知られていないことに(今ではもうよく知られている?)、@INCにコードリファレンスやblessされたオブジェクトが入っていると、そのコードを実行(あるいはINCメソッドを呼び出す)というのがあります。Acme::RemoteINCはこれを利用しているわけです(詳細はperlfuncのrequireを参照)。
* [今月のAcme] Time::Traveller
(上のが2月で、これが3月。)変数の評価を遅らせるという機能から名付けられたTime::Traveller。Timeカテゴリだけど時間操作に全く関係ないという、どちらかというとAcmeカテゴリに相応しいモジュール。評価が星1つになっていたのでみてみると「酷い名前だ! Acme::Time::Travellerにしてちょーだい」というコメントが。でもこのモジュール、標準付属のBモジュールを使っていてなかなか興味深かったのです。
ちなみに星1つをつけた方は上のエントリにあるAcme::Everythingの作者さん(PPIなどもこの方)。
* [Perl] mixi_pop3
mixi_pop3.plは結局、とってきたメッセージをサーバにキャッシュするようにしました。再度取り出すときはキャッシュを利用します。DELEマークがつけられたものは、取り出しません。mixi側で削除されたものはキャッシュから取り除きます。
てな具合でとりあえず一段落(コマンドラインから使いやすくとかは全然してません)。次はSMTPのゲートウェイ……なのですが、POP3GWというのをつくられた方がなされるかな? CPANのNET::Server::Mailというモジュールが拡張性の高いSMTPサーバをつくる雛形になりそうですが、NET::Serverを継承していないのがちょっと残念。Net::Serverは以前日本語訳をしましたが、非常に高機能で便利なモジュールです。
* [雑感][メモ] さくらとAcmeとmod_rewrite
懸案(?)だった今月のAcmeカテゴリの完全独立化を敢行。改めて見返すと不毛なことこの上なし。 war--n $!
さくらのレンタルサーバ mod_rewrite の導入。 とうとう。
POP3との変換サービスを現在公開していますが、送信メールの変換も対応しました。 :送信メールサーバ:33rpm.jp :送信元メールアドレス:[Mixiに登録してるメールアドレス] :宛先メールアドレス:[送信したいユーザのID]@mixi というメールを記述し、一度メールを受信((http://..
ようやく今日、mixi_pop3試せましたー。<br>問題なく動きましたー。<br>ありがとうございますー。