タグ

perlに関するfaultierのブックマーク (104)

  • HTTP::Engineのミドルウェアを作ってみる : As Sloth As Possible

    先週末からこっちうどん屋をいじって遊んでたのだけど、HTTP::EngineにはHTTP::Engine::Middlewareというミドルウェアを作る仕組みもあるので、せっかくなのでUdonMap(Rack::URLMapもどき)をミドルウェアで実装してみた。 gist: 117012 - GitHub 前回の記事のときと構成が変わってるけど気にしない方向で。あとで前の記事直しとこう前の記事も補足した。Udon::Middleware::URLMapがミドルウェアで、server-middleware.plがミドルウェア版UdonMapを使って書き直したもの。 ミドルウェア自体は簡単に作れた。use HTTP::Engine::MiddlewareするとMooseの初期化処理をしたりミドルウェア用のメソッドを生やしたりしてくれるので、HTTP::Engineをnewするときに指定したハン

    HTTP::Engineのミドルウェアを作ってみる : As Sloth As Possible
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • HTTPx::Dispatcher の練習 - @kyanny's blog

    HTTPx::Dispatcher の使い方を勉強した。ごちゃごちゃ試行錯誤して、使い方がわかったので、動かすための最小限のコードを整理して github にあげた。 GitHub - kyanny/httpx-dispatcher-practice: HTTPx::Dispatcher practice 参考になったソース mobirc どう書くとどう動くのか例 connect '' => { controller => 'Root', action => 'index' }; これは、 $req->uri->path eq '/' の場合にマッチするルール(HTTPx::Dispatcher が内部で '/' を '' に変換している)。 $rule は、 $rule = MyApp::Dispatcher->match($req); $rule = { controller => '

    HTTPx::Dispatcher の練習 - @kyanny's blog
    faultier
    faultier 2009/05/25
    こっちも後で試してみよう
  • うどん屋のステータスを返す : As Sloth As Possible

    このブログではまず滅多にPerlの話を書かないのだけど、実は仕事ではPerlばっかり書いてたりする。にもかかわらず最近RubyRuby言いすぎなので、このままではマズい、社内のPerl Mongerな方々にトゥシューズに画鋲を入れられたり机に花を飾られたりしてしまう(※)、ということで今週末はHTTP::Engineをいじってみることにした。 ※Perl Mongerはそんな陰湿ないじめはしませんし、Rubyistを公言してると社内で立場が危うくなるなんてことももちろんありませんし、そう言えばトゥシューズなんか履いたことないや。 http://faultier.jp/resource/udon gist: 117012 - GitHub 比較の為に「彼女が404」を作ろうかと思ったんだけど、そのまんま同じのを作ってもあんまり芸がないので「うどん屋が403」にしてみた。彼女のと同じくGET、

    うどん屋のステータスを返す : As Sloth As Possible
    faultier
    faultier 2009/05/25
    うどん屋に30分並ぶとかアホだろう。高いし。
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • http://blog.cnu.jp/2009/05/19/perlrubyparrot/

  • YappoLogs: 良い子のMacなPerlユーザーに送る、あなたのPerlアプリをMacアプリにする方法 (Mac版的PAR)

    良い子のMacPerlユーザーに送る、あなたのPerlアプリをMacアプリにする方法 (Mac版的PAR) こんにちは!近頃咳と痰と鼻水と鼻づまりがすごく多い、金曜日の天使ことYappoです。 ちょっとしたツールをPerlで書いて、お友達に使ってもらいたいときってありますよね?普通は常識的にgithubとかのurlを教えれば良いのですが、それも出来ない人とかもいた場合が非常に面倒です。 そんな時の便利ツールとしてPlatypusがあるのは有名ですね。 Platyputsを使えば簡単にXSを含めたアプリが配布出来ますんです。 XSとかはアーキテクチャ等によって違うバイナリが吐かれてる事が知られますが、今回はあなたと同じMacOSのバージョンが入ってる事を前提にしちゃって問題無いです。 Macユーザ同士なんだからCPUのアーキテクチャは、殆どの場合は一緒だろうしOSのバージョンもLeopar

  • PerlとRubyで省メモリなハッシュを使おう - mixi engineer blog

    サボっていた早朝ジョギング@駒沢公園を再開して2週間たち、やっと抜かれる数より抜く数の方が増えてきたmikioです。今回は、PerlRubyのハッシュの代用としてTokyo Cabinetを使うことでメモリ使用量を激減させられることを説明します。 抽象データベースAPI Tokyo Cabinetには抽象データベースという機構があり、先日、そのPerlRubyのバインディングをリリースしました。それを使うと、各種言語のハッシュとほぼ同じような共通したインターフェイスで、以下のデータ構造を利用することができます。 オンメモリハッシュ:各種言語に標準のハッシュと同じく、メモリ上でkey/valueの関係を表現する。 オンメモリツリー:メモリ上の二分探索木としてkey/valueの関係を表現する。 ファイルハッシュ:いわゆるDBMとして、ファイル上でkey/valueの関係を表現する。 ファ

    PerlとRubyで省メモリなハッシュを使おう - mixi engineer blog
  • Perlを最適化する

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Perlを最適化する
  • 高速Webサーバ Nginxの組み込みPerlを使ってみる : blog.nomadscafe.jp

    高速Webサーバ Nginxの組み込みPerlを使ってみる NginxというWebサーバがあります。 ロシアの方がつくったもので、rambler.ruでも使われてます。 日語情報がほぼ皆無ですが、このあたりで紹介されています。 機能的には、epoll,kqueueやsendfileなどがサポートされ、 rewrite, header書き換え deflate FastCGI SSL シンプルな負荷分散付きreverse proxy 等すでにLighttpdと比較しても遜色ない十分な機能が実装されてます。 パフォーマンス的にもLighttpdと同等かそれ以上でます。 珍しい機能として、「perlインタプリタの組み込み」があるので早速試してみます。Fedora Core6ではnginxはyumでインストールできます。perl_moduleも有効になってます perl関連のドキュメントはここ。

  • Perlでアニメ顔を検出&解析するImager::AnimeFace - デー

    というのを作ったので自己紹介します。 2月頃から、コンピュータでアニメ顔を検出&解析する方法をいろいろ試しつつ作っていて、その成果のひとつとして、無理やり出力したライブラリです。 はじめに はじめにざっとライブラリの紹介を書いて、あとのほうでは詳細な処理の話を僕の考えを超交えつつグダグだと書きたいと思います。 Imager::AnimeFaceでできること Imager::AnimeFaceは、画像に含まれるアニメキャラクター的な人物の顔の位置を検出し、さらに目や口など顔を構成する部品位置や大きさの推定、肌や髪の色の抽出を簡単に行うことができるライブラリです。 これらが可能になると、 画像から自動でいい感じのサムネイルを作成できる 動画から自動でいい感じのサムネイルを作成できる 自動的にぐぬぬ画像が作れる 自動的に全員の顔を○○にできる 顔ベースのローカル画像検索 など、最新鋭のソリューシ

    Perlでアニメ顔を検出&解析するImager::AnimeFace - デー
    faultier
    faultier 2009/04/13
    面白い。ちょっといじってみたい。
  • Mouse.pmでParameterized Typesが使えるようになった理由 - D-6 [相変わらず根無し]

    Mouse.pmでParameterized Typesが使えるようになった理由 Data::LocalizeがMooseベースで、Moose嫌いなtokuhiromがMouseじゃねーから使わないって言われたのが発端。おお、んじゃあAny::Mooseにすべかぁ、と思ったらParameterized typesが実装されていない。ないからことごとくエラー。「実装されてないじゃん!」って言ったらtokuhiromとYappoに「え〜、俺ら必要ないし」的な発言をされて正直Mouse Mouse言うならちゃんと最後まで面倒みてやれよ!と思った。 ...というような事を書いたが、このエントリは別に彼らに文句を言いたいわけではない。 オープンソースの世界は参加者一人一人が自分の技術を少しずつ世間に提供する世界だ。彼らにMooseとの完全なる互換性を求めるのは大間違いだ。ここまでちゃんと使える物

  • Perl を crash させる方法 - モダンなPerl入門

    Perl を Crash させたい。そんな欲求を抑えきれないあなたのために、いくつかの方法を教えよう。 いろいろな crash unpack で不正アクセス perl -e 'unpack "p",0xdeadbeef' pack において 'p' は A pointer to a null-terminated string. を意味する。不正なメモリ領域にアクセスすれば死ぬのはあたりまえである。 overload の中で再帰する perl -e 'use overload q{""}=>sub{"$_[0]"};$a=bless{},main;"$a"' overload の stringify させる部分などで無限ループにおちいると、segv する。 このバグは昔から知られており、ticket が切られているが、なおっていない。 @INC の中の coderef で再帰する perl

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • CPAN 長いネームスペース大会 : にぽたん研究所

    「FormValidator::Simple::Plugin::Japanese の依存ライブラリを減らしつつ perl5.8 的な Unicode 使用スタイルにして高速化をはかるパッチ - TokuLog 改めB日記」 あたりに関連して、某 IRC にて… 19:23 >nipotan< FormValidator::Simple::Plugin::Japanese は、 19:24 >nipotan< Number::Phone::JP フンフンまわりが重いような希ガス 19:24 >nipotan< つか、U::RD にしても、N::P::J にしても俺じゃねぇか 19:24 <hid*******> w 19:26 <Yap***> www 19:27 >nipotan< FormValidator::Simple::Plugin::Number::Phone::JP でしたっけ

    CPAN 長いネームスペース大会 : にぽたん研究所
    faultier
    faultier 2009/02/18
    長すぎるw しかしeBayAPI多いなぁ。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    faultier
    faultier 2009/02/09
    これは素敵。思いっきり同じものを作ろうと思ってたけどその必要無くなった。
  • perlembed - C プログラムに perl を埋め込む

    名前 perlembed - C プログラムに perl を埋め込む 説明 前書き あなたの欲しいのはどれ? Perl から C を使う perlxstut, perlxs, h2xs, perlguts, perlapi を読みましょう. Perl から Unix プログラムを使う バッククオート及び perlfunc にある system と exec を読みましょう. Perl から Perl を使う "do" in perlfunc 及び "eval" in perlfunc, "require" in perlfunc, "use" in perlfunc を読みましょう. C から C を使う 構成を考え直してみましょう. "><C から Perl を使う> このままどうぞ... 道のり C プログラムのコンパイル C プログラムに Perl インタプリタを追加 C プログラ

  • Perl でモバイルウェブ開発 - モダンなPerl入門

    Perl でのモバイルウェブ開発。CPAN モジュールつかいまくって簡単に開発がすすめられます。 端末情報を制する(HTTP::MobileAttribute) HTTP::MobileAttribute をつかうと、HTTP ヘッダから情報をぬきだし、ケータイ端末の情報をあつかいやすくすることができます。 use HTTP::MobileAttribute plugins => [ qw/ IS / ]; my $ma = HTTP::MobileAttribute->new(); $ma->is_docomo(); 絵文字をふくむ文字列をUTF8にまとめつつ相互変換(Encode::JP::Mobile) Encode::JP::Mobile をつかえば、絵文字の相互変換は容易におこなえます。ユーザがポストした発言などにふくまれる絵文字を、各キャリア用に相互変換することができます。 E

  • ワンライナー記号化スクリプトを書いた - すぎゃーんメモ

    何かの拍子にこの記事を見かけてしまい、衝撃を受けた。 2006-11-07 - 兼雑記 Perlってこんな変態プログラムが書けてしまうのか…!!と。 記号だけでプログラムが書けてしまうとは全然知らなかった。 何度も読み返してようやく理解した範囲では、 拡張正規表現の構文を利用して任意のコードを実行させる 文字列は文字列同士の排他的論理和をとることで生成できる ということらしい。 なので、「どの文字とどの文字の排他的論理和がどの文字になるか」を把握していれば、そこから文字列を生成することができるわけで、自分でもこうした記号プログラムが書けるのではないか?と思って、作ってみた。 任意のワンライナーを記号で表現しなおすためのスクリプト。(2/8 ちょっと修正) #!/usr/bin/perl use strict; use warnings; # 変換辞書 my $dict = &create_

    ワンライナー記号化スクリプトを書いた - すぎゃーんメモ
  • (Obsolete) Parallel::ForkManager + IPC::Shareable で複数のプロセスで変数を共有する - 日向夏特殊応援部隊

    追記: 2011-12-20T03:18:11+09:00 結構この記事をしばしば参考にして安易にSystemV IPC 共有メモリに突っ込む事をやる人も居るようですが、IPC::Shareable 自体が長い事、メンテされてない上に、SystemV IPC 自体も古くさい手法です。大人しくファイルに書き出すなり、SQLite などを使って保存したりだとか、AnyEvent, Coro 等で書き直すとか、より簡単で確実な方法を試した方が良いでしょう。 つまるところ、この方法はお勧め出来ません。エントリ自体は削除せずに残しておきますが、そのつもりで読んで下さい。 オライリーの Perl クックブックの古い奴のレシピ 16.12 とかに書いてある内容なんですけど、自分でも試してみました。 IPC::Shareable のインストール 残念ながら現在のバージョン 0.60 はそのままだとテストが

    (Obsolete) Parallel::ForkManager + IPC::Shareable で複数のプロセスで変数を共有する - 日向夏特殊応援部隊