タグ

perlに関するhanagemanのブックマーク (48)

  • オススメCPANモジュールその1。 AnyEvent - TokuLog 改めB日記

    というわけで、俺の独断と偏見によるオススメモジュールのコーナーです。 AnyEvent は poll/select/kqueue/epoll(4) などのイベントループを抽象化するライブラリです。似たような目的のものとして Danga::Socket, POE などがありますが、ライブラリ全体のインターフェースの完成度や速度などの点から AnyEvent を僕は一番押しています。 Pure Perl で利用できますし、インターフェースも安定しています。まだバリバリ開発されてますが、backward incompat な変更はされないようです。 作者が mlehmann 氏ということで、ドキュメントは丁寧ですが攻撃的な文章が目立ちますし、バグレポートすると異常な長文がかえってきたりするのでうっとーしかったりしますが、コードの品質はたかいので、気にする必要はないかとおもいます。コードの品質の前

  • TTのfailsafe - Hatena::Diary::Neko::kak 500 Internal Server Error

    CDBIとかDBICのイテレータで [% WHILE (foo = foo.next) %] とか書くと、 undef error - WHILE loop terminated (> 1000 iterations) とか怒られた。 TT見ると $WHILE_MAX = 1000 unless defined $WHILE_MAX; ... sub while { my ($class, $expr, $block) = @_; $block = pad($block, 2) if $PRETTY; return < $WHILE_MAX iterations)\\n" unless \$failsafe; }; EOF } こんな感じで無限ループを抑止してる。 なので、 local $Template::Directive::WHILE_MAX = $it->count+1; こんな感

    TTのfailsafe - Hatena::Diary::Neko::kak 500 Internal Server Error
  • へぼへぼCTO日記 - Casual Talks#1でLTしてきました

    昨日(11/20)にperl-casualのCasual Talks#1にて拙作のFormValidator::NestedについてLTしてきました。 slideをslideshareにあげておきました。 得られた教訓 1. 実際に話し始めると早口気味になるのでスライド大目ぐらいが自分にはちょうどいいかも 2. プロジェクターにつなぐときはねじをちゃんとしめておく 3. やっぱり笑いを一つぐらいとっといたほうが場は暖かくなる (PAUSE ID requestの際にcatalyst-pluginを作りたいと書いていたと言ったときに若干嘲笑気味の笑いはありましたがw) 自分以外も発表が初めてだという方も多かったのに、発表が皆さんうまくて非常に面白かったです。またの機会があったら今回の教訓を踏まえまた発表できたら幸いです。 主催されたyusukebeさん、会場の用意や二次会の(実質)幹

  • aptitude で libxml-sax-perl が入らない!

    こんな感じのエラーが発生する。 libxml-sax-perl (0.12-5) を設定しています ... Can't locate object method "save_parsers_debian" via package "XML::SAX" at /usr/bin/update-perl-sax-parsers line 90. dpkg: libxml-sax-perl の処理中にエラーが発生しました (--configure): サブプロセス post-installation script はエラー終了ステータス 255 を返しました これは、エラーメッセージにもあるようにdebian特有の問題らしい。家のUbuntu サーバーでも発生した。以下解決ページ http://bugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=2291

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 第16回 Perl::Dist::Strawberry:何味のアイスクリームがお好きですか? | gihyo.jp

    今年のYAPC::Asia、いかがでしたか? 先日開催されたYAPC::Asiaはいかがでしたか? 筆者はあいにくそれほど多くのセッションに参加できたわけではないのですが、この連載ですでに取り上げたもの、まだ取り上げていないもの、そして前回原稿を書いたときにはまだ存在すらしていなかったものを含めて、有意義なセッションがたくさんありました。おかげさまで筆者も当面ネタに困ることはなさそうです。 とはいえ、あまりに旬なモジュールについては、情報の流れが速すぎて、のろまな筆者では追い切れませんので、今回と次回は、筆者が今年のYAPC::Asiaでもうひとつ発表しようかと思っていたネタをしっかりまとめておこうと思います。 ActivePerlの興隆 PerlはもともとUnixで使われていたさまざまなツールのよいところを集めて作られた言語です。だから、Perlのコマンドにはシェルやawk、Cに由来する

    第16回 Perl::Dist::Strawberry:何味のアイスクリームがお好きですか? | gihyo.jp
  • Six Apart - Tech Talk Blog: 分散ファイルシステム MogileFS について

    初登場になります、酒井といいます。 今回は Six Apart のサービスで使われている MogileFS というファイルシステムを紹介したいと思います。MogileFS については、日語の情報はあまり…、というかほとんどない状況ですので参考にしていただければと思います。では早速。。。 MogileFS とは MogileFS とは、Perl で記述されているオープンソースな分散ファイルシステムです。 プロジェクトホームページ http://www.danga.com/mogilefs/ メーリングリスト http://lists.danga.com/mailman/listinfo/mogilefs 上記のホームページ内でも紹介されていますが、主に以下のような特徴があります。 アプリケーションレベルでの実装なので特殊なカーネルモジュールいらず。 ファイルを複数ホストに自動コピー / バ

  • 最近の Catalyst の構成

    新しく作った開発プロセスの問題点が見えたわけだから、それはそれとして改善すればいいのに。プロジェクトに併せてテーラリングされてないのとか。そういうことを自発的にやれる人たちが必要だというのもわかるけど ■ [catalyst][perl] 最近の Catalyst の構成 最近 Catalyst のエントリをよく見かけるので自分の構成をさらしてみます。コードは CodeRepos にあります。 share - Revision 30441: /lang/perl/Chaostr/trunk 元々は、作ろうとしたアプリがあったんですが、去年の Catalyst confernce 以降、MyApp 的実験場になってます。仕事で作ったものはさらせないので、構成だけ表に出す感じ。ちなみに今のところ Catalyst 5.7 系でしか使ってないです。 あと、Controller クラスのベースで

    最近の Catalyst の構成
  • 第8回 Reaction:CatalystをもっとDRYに | gihyo.jp

    アプリケーションの枠組みを越えた再利用 前回は、Catalyst 5.7で登場したチェーンドアクションを利用して適切なベースコントローラをつくれば、CRUDのような定型処理は再利用できるようになる、という話をしました。これはコンテントマネジメントシステム(CMS)のように同じようなインタフェースを持つ画面が多いシステムをつくるときには特に効果的なのですが、その再利用を、ひとつのアプリケーション内だけで完結させてしまうのはもったいない話。自社でつくるアプリケーションにはどんどん使い回していきたいものですし、コピー&ペーストを避けるためには、なんらかの名前空間上にその共通コードをまとめていく必要があります。 もちろんそのコードが小さく、十分に一般化できるものなら、Catalyst、あるいはCatalystXという名前空間に入れてもかまいませんが、コントローラの部品だけでなく、モデルやビューまで

    第8回 Reaction:CatalystをもっとDRYに | gihyo.jp
  • 第7回 Catalyst::DispatchType::Chained:チェーンドアクションはむずかしい? | gihyo.jp

    モダンPerlの世界へようこそ 第7回Catalyst::DispatchType::Chained:チェーンドアクションはむずかしい? 5.7系列の目玉だったチェーンドアクション 3年前に登場したCatalyst 5.7系列で導入された機能のひとつに、チェーンドアクションと呼ばれるものがあります。これは慣れると非常に便利な機能なのですが、それまでのURLとクラスの対応を根底から覆してしまう大転換だったわりにドキュメントが不足していたため、活用の仕方がわからないという声もありました。 今回はCatalyst 5.8系列で導入された新しいツールを使いながら、このチェーンドアクションの使い方を紹介していきます。スペースの都合でCatalystの基はある程度理解しているものとして話を進めますので、わからないことがあったらCatalyst体のドキュメントやCatalyst::Manualなどを

    第7回 Catalyst::DispatchType::Chained:チェーンドアクションはむずかしい? | gihyo.jp
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Catalyst::Controller::Resources (for catamoose) を使ってみた - 暗澹

    Catalyst::Controller::Resources が Catalyst 5.8 に対応したようなので、手元の 5.80003 に併せてさっそく使ってみた。Catalyst のコントローラを Chained の呪縛から解き放ってくれる素敵なモジュールです。Catalyst::Controller::Resources - Catalyst Collection Resources Controller - search.cpan.orgController::Resources を catamoose で使えるようにした - masaki@catalyst - Catalystグループ で、自分の書いてるアプリにたまたま ActionClass を使ってる箇所があって、 sub list : ActionClass('Hoge') {} みたいにしてみたんだけど、これがどうも華

    hanageman
    hanageman 2009/05/16
    おお!ありがとうございます!
  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
  • サブルーチンのアトリビュートの信頼性 - Islands in the byte stream (legacy)

    Perl 5.6.0以降にはアトリビュート(Attribute)というメカニズムがあり,変数やサブルーチンの宣言時に呼び出されるコールバックを設定できる*1。 このアトリビュートは実験的に取り入れられたのちに放置されるという不幸な運命をたどってしまい,現状では活用するのが難しい。特に,サブルーチンアトリビュートの扱いは非常に難しく,使用に際しては様々な問題がある*2。 一つの大きな問題は,アトリビュートハンドラが呼び出されるタイミングである。アトリビュートハンドラはサブルーチンオブジェクトの構築中*3に呼び出されるのだが,サブルーチンオブジェクトの構築が不完全なため,そのままではアトリビュートハンドラ内でできることはほとんどないのだ。以下のスクリプトはこのことを示す。 #!perl -w use strict; use Devel::Peek; sub MODIFY_CODE_ATTRIB

    サブルーチンのアトリビュートの信頼性 - Islands in the byte stream (legacy)
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Catalyst::Controller::Resources でオーバーロード POST を使いたい - 日向夏特殊応援部隊

    と id:ikasam_a にわがまま言ったら Catalyst::Request::REST::ForBrowsers ってのを教えて貰ったよ。 オーバーロード POST って何だよって方は、 統一インターフェイスと PUT and DELETE tunneled POST パターン - masaki@catalyst - Catalystグループ ROA と Catalyst - masaki@catalyst - Catalystグループ とか読むと幸せになれると思います。 使い方 MyApp にて、こんな感じにしときます。 package MyApp; use strict; use warnings; use Catalyst::Runtime '5.70'; use Catalyst::Request::REST::ForBrowsers; ### 中略 __PACKAGE__

    Catalyst::Controller::Resources でオーバーロード POST を使いたい - 日向夏特殊応援部隊
  • C:C::Resources が catamoose 対応されてる! - 僕ト云フ事@はてな出張版

    早いw 天才ですか! id:ikasam_a++ catamoose 対応ブランチ ちなみに現行の Resources と比べるとだいぶ変わってるw master ブランチ

    C:C::Resources が catamoose 対応されてる! - 僕ト云フ事@はてな出張版
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Moosification: Catalyst 5.8に移行した際にちょっと気づいた事。 - D-6 [相変わらず根無し]

    Moosification: Catalyst 5.8に移行した際にちょっと気づいた事。 最初からMooseベースでアプリケーションを作るというのは、実務ではなかなか難しいのはわかります。一般論は JPA #02で話すのでおいておきますが(参加申し込みは今日5/12までですよ!)、5.8 からMoose化したCatalystであった問題・注意点をちょっと書き出してみます。 1. use Catalyst Catalyst::Upgradingを読んでいると package MyApp; use Moose; extends 'Catalyst'; __PACKAGE__->setup(qw/ ConfigLoader /); という表記が見られるが、これは気をつけないと駄目。 自分が直面した問題は、path_to()等を使った時に起こった。path_to() は現アプリのルートディレクトリ

  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記