タグ

perlに関するd4-1977のブックマーク (295)

  • のみまくし日記 - Sledge::MobileGate 0.02

  • Class::Data::Accessor と Class::Data::Inheritable の違い - IT戦記

    Catalyst のソースを読んでいると Class::Data::Accessor と Class:Data::Inheritable が出てくる。つかわれかたは、ほとんど同じに見えるので、ちょっとソースを読んでみた。 読んでみると Class::Data::Accessor のほうは、オブジェクトメソッドとして呼ばれたときに、オブジェクトのデータにアクセスする。 こんな感じ。 use strict; use warnings; use base qw/Class::Data::Accessor Class::Data::Inheritable/; main->mk_classaccessor('hoge'); # Class::Data::Accessor main->mk_classdata('fuga'); # Class::Data::Inheritable main->hoge

    Class::Data::Accessor と Class::Data::Inheritable の違い - IT戦記
    d4-1977
    d4-1977 2006/10/07
    Class::Data::Accessor と Class:Data::Inheritableのメモ
  • Perlメモ

    複数のプロセスでロック状態が異常であると判断し,そのうちの 1つがロックを解除したことにより,別のプロセスがロックしたにもか かわらず,先ほどロック状態が異常であると判断したプロセスによってこの正常なロッ クを解除されてしまう可能性があります. この方法の問題点は,異常なロック状態を解除する操作が正常なロック状態をも 解除できてしまうことにあります.逆に言えば,異常なロック状態を解除する操作に よって正常なロック状態を解除できなければ問題ないわけです.そのためにはどうす ればよいのか? 答えはロック状態が常に変化していけば よいということです.そして,これを実現するのに都合がよいのが rename による方法になります. 最初のスクリプトで説明しますと,ロックファイルが lockfile という 名前のときがロックが解除されている状態で,lockfile987654321 のよう に後ろに

    Perlメモ
    d4-1977
    d4-1977 2006/10/06
    ひらがなが分からなかった...。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    d4-1977
    d4-1977 2006/10/06
  • CGI::Application - 再利用可能なWEBアプリケーションを構築するためのフレームワーク

    NAME SYNOPSIS INTRODUCTION USAGE EXAMPLE ABSTRACT DESCRIPTION Instance Script Methods Sub-classing and Override Methods Application Module Methods Testing PLUG-INS Existing plug-ins Writing Plug-ins Writing Advanced Plug-ins - Using callbacks COMMUNITY SEE ALSO AUTHOR CREDITS LICENSE Page Top NAME CGI::Application - 再利用可能なWEBアプリケーションを構築するためのフレームワーク Page Top SYNOPSIS # "WebApp.pm"の内容... package We

  • Perlで作るモバイルサイトのコツ:第3回:CodeZine

    はじめに ご存知の通り、携帯端末には現在地の位置情報を基地局ベース、もしくはより精度の高いGPSを使用して送信する機能がついています。この機能を使用して、現在いる場所の地図を表示したり、最寄り駅を表示したりするサービスが各社から提供されています。 位置情報の送信・取得方法はキャリアごとに異なりますが、仕様さえ理解すれば個人で運用しているサイトにも簡単に導入できます。まだ試したことのない方は、この機会にぜひお試しください。対象読者 PerlCGIアプリケーションを作成したことがあり、位置情報を利用したい方。必要な環境 Perl 5.8以上が動作する環境。iモード 「オープンiエリア」 ドコモが提供する基地局ベースのエリア送信サービスで、すべてのiモード対応端末で利用できます。「NTTドコモ 作ろうiモードコンテンツ:オープンiエリア」で仕様が公開されています。 下記のパラメータをドコモの位

  • Perl で継続 - Continuity - daily dayflower

    ウェブアプリを作っていると,セッションデータを覗きつつ管理しつつ処理フローのどこにいるのか自覚しながら全体を作り上げるのがめんどくさくなってきます。 セッションデータサーバ(memcached 的な),があればいいんじゃね? セッション管理サーバ(認証等も含めて),があればもっといいんじゃね? セッションごとにウェブアプリデーモンを立ち上げて,その後は同一セッションのクライアントはそいつと通信すればいいんじゃね(fastcgi 的) なんて考えたりして つーかそもそもウェブアプリのコードがリクエストドリブンなのが問題じゃん ASP.NET みたくイベントドリブンなアプローチもあるよね でも,昔懐かしのコンソールプログラムみたく直線的なコード書いたりしたいなぁ 暇になったらそういうコードを書いてみるのも面白いかなぁ… と,思っていたら,とっくの昔にありました。 Continuity*1 実の

    Perl で継続 - Continuity - daily dayflower
  • #!shebang.jp : そういえば Validation

    November 04, 200518:36 そういえば Validation カテゴリ技術ネタ フレームワークとか O/R マッパーとか使って Web アプリを作ると全体の作業にしめるValidation の割合が相対的に多くなりがちで、どうにか楽出来ないかと考えています。~ で、Data::FormValidatorとかFormValidator::Simpleとかの Validation 条件を定義するタイプのやつもいいかなと思いつつ、中々手が出ません。 というのも、エラー文言の表示や「○○がある場合のみ××が存在しないといけない」みたいな条件がうまく定義出来るのかが心配で。 で、最近は以下のようにしています。 ^# $self->r is-a Apache::Request ^my $validator = Project::Validator->new($self->r); ^$

  • AppleScript で Perl に GUI をつける (hPod)

    (「Perl で Exif を扱う」のつづき) Xcode を使って、 Perl スクリプトに AppleScript の GUI を付けてみて、そこそこうまくいったので忘れないように、いや、忘れるので、忘れないうちにメモ。 AppleScript から do shell script という命令を使うと、 UNIX コマンドを起動する事ができる。コマンドが起動できるということはつまり、なんでもできるということになるかしら? それはさておき、その仕掛けを使えば、無愛想なコマンドライン・ツールであった Perl スクリプトに GUI をかぶせて Mac OS X 用のアプリケーションに仕立てる事もできる。 Objective-C を使わなくとも(いえ、知らないんです) Perl (や他の言語でもいいけどそれら)と、少しの AppleScript の知識があれば、それっぽいものが「手軽に」でき

  • Table,Caching,Memoize,Closure,Profiler - koyachiの日記

    入力に対して決まった値を返し、入力値のレンジが広く、何度も値を取得する必要がある場合、Cなんかでは初期化時に全入力値に対する結果を保持するテーブルを生成したりします。速度重視する場合のsinテーブルとか。割と制約がシビアでない環境では、新しい入力パラメタが与えられるたびに値を保存する関数でもいいと思います。 my %cache; sub fast_sin { return $cache{ $_[0] } if exists $cache{ $_[0] }; $cache{ $_[0] } = sin( $_[0] ); }PerlのMemoizeモジュールや、JSANのMemoizeモジュールを使うとこのキャッシング機能を毎回書く必要がなくなります。Perlの場合は、 use Memoize; memoize 'sin';とするだけでsin関数にキャッシュ機構が組込まれます。 Perlでの

    Table,Caching,Memoize,Closure,Profiler - koyachiの日記
    d4-1977
    d4-1977 2006/09/26
  • Tociyuki::Diary - perlでのクロージャの3パターン

    id:naoya さんが Perl のクロージャの使い道を考えておられるようです。便上して、私が良く使う、3つのパターンを紹介してみます。なお、単なるコード・リファレンスとしての使い方は除外して付随するコンテキストが意味をもつクロージャの場合に限ります。 (2006年2月14日修正 use Fcntl のパラメータに :DEFAULT が抜けていたので追加しました。) コールバック・パターン イテレータにクロージャを渡して、イテレータの中から繰り返し呼び出してもらってコンテキストに副作用を及ぼす使い方です。クロージャの使い方の中でも最も自然に使えるものだと思います。以下、Ruby のブロック呼び出しっぽくコード・リファレンスを $yield パラメータに渡すことにします。へそ曲がりに BBS の CGI コード用に flock による排他ロックを例にしてみます。 package Mutex

    Tociyuki::Diary - perlでのクロージャの3パターン
    d4-1977
    d4-1977 2006/09/24
  • Perl関連情報 | Ryuzee.com

  • Perlでオブジェクトを書くときに必要なClass::Accessor とは | ブログが続かないわけ

    SQLAlchemy Database Engines 日記。 (TokuLog) - Class::Accessor は言語の機能としてつけるべきだったよね このエントリの中に次のようなくだりがある。「Perl で書かれたオブジェクトのほとんどって、この2つを継承しているものね。」 最近話題のPerlの学習コストの話とも多少関係があるのだが、PerlではCPANの使いこなしってのが重要なのだ。そこで、Class::Accessor とはどういうものか簡単に説明しよう。 基的には perldoc Class::Accessor perldoc -m Class::Accessor としてもらえばいいのだけれども、もう少し簡単に解説してみる。 (ホントは自分用の備忘録なのだが) オブジェクト指向そのものの話は割愛させてもらいましょう。オブジェクト指向ではメンバ変数に直接アクセスするのは「悪

    Perlでオブジェクトを書くときに必要なClass::Accessor とは | ブログが続かないわけ
    d4-1977
    d4-1977 2006/09/20
    Class::Accessorのこと。
  • http://antipop.gs/mt/2005/09/13/004704

    d4-1977
    d4-1977 2006/09/20
    Class::Accessorのことなど
  • 元祖 サトシのブログ : Class::Accessor で setter, getter を自動生成

    しばらく Perl を使っていなかった(ちょこっとしたツールを作るぐらい)のだが、ある目的のために Perl を勉強し直す事にした。これから数日は Perl ネタが続くおそれがある ;-) で、昨晩に色々と見ていてたどり着いたのが、Perl の Class::Accessor モジュールである。これは、オブジェクトの属性を設定したり(setter) 取り出したり(getter)する Accessor をいちいち作らなくても済むようにできる。 例えば、従業員クラスがあって、名前(name)、salary(給料)という属性を set, get するメソッドをわざわざ package Emplyee; sub name { my $self = shift; if(@_) { $self->{name} = $_[0]; } return $self->{name}; } sub salary

    d4-1977
    d4-1977 2006/09/20
    Class::Accessorのこと。
  • Module::Pluggable - ?D::MotionBros

    Foo.pm Foo/BarA.pm Foo/BarB.pm のような感じで子供モジュールをバンバン追加していきたいけど ロードは Foo でまとめてしまいたいときはこれを使うと便利みたい。 package Foo ; use strict ; use Module::Pluggable ( # except => qr/^Foo::Plugin/, search_path => [__PACKAGE__], instantiate => 'new', ) ; としておけば use Foo ; foreach $plugin ( Foo->plugins() ){ next if( ! $plugin->can('method') ) ; $plugin->method() ; } という感じで Foo::BarA->method(), Foo::BarB->method() と用意 した

    d4-1977
    d4-1977 2006/09/11
  • CPAN::Mini で CPAN のミラーをローカルに: blog.bulknews.net

    CPAN::Mini で CPAN のミラーをローカルに DECON で話してきたネタですがちょっと詳しく。 飛行機やら電車の中やらでオフラインハックするときに(たまに)問題になるのが CPAN モジュールの不足です。「あぁ、このマシンにはあのモジュール入ってねぇ~」とかでハックが滞るのは萎えます。というわけで minicpan。CPAN::Mini というモジュールで、CPAN モジュールの最新版だけを持ってきてミラーをつくることができます。 導入は簡単で、CPAN から install CPAN::Mini すると minicpan というコマンドが付属してきます。コマンドラインから使うには、 > minicpan -r http://ftp.funet.fi/pub/languages/perl/CPAN/ -l ~/minicpan とかすれば finet から HTTP で同期で

    d4-1977
    d4-1977 2006/09/10
    帰省するときとかにも便利。
  • Perlで作るモバイルサイトのコツ:第2回:CodeZine

    はじめに 若い世代の女性を中心にデコメールが注目されています。 デコメールとはNTTドコモのFOMA900iシリーズから導入された簡易HTMLメール機能で、HTMLメールならではの文字修飾、画像の埋め込みなどが可能です。これらの機能を使えば、ただのテキストのメールよりも個性的でかわいいメールを送ることができるので、それが人気につながっているようです。 デコメールの仕様は下記で公開されています。NTTドコモ 『作ろうiモードコンテンツ:デコメール』  稿ではCPANモジュールのMIME::Liteを使ったサンプルを用いて、デコメールの基的な仕様について解説します。 ※CPANについては、第1回を参照してください。対象読者PerlCGIアプリケーションを作成したことのある方。CPANモジュールを使用したことのある方。携帯サイトでデコメールを配信しようとされている方。 必要な環境 Perl

  • http://diary.lampetty.net/20060825.html

  • ITmedia エンタープライズ:LAMP vs. LAMP──mod_perlとmod_phpのパフォーマンス比較

    MySQLテストでは、5000件のレコードを含むテーブルを読んで更新するHTTPリクエストを1つ実行した。MySQLとのやり取りには、標準PHPインタフェースとPerl DBIを使った。テストに使ったテーブルの構造は次のとおり。 +----------+----------+------+-----+--------+----------------+ |フィールド| タイプ | Null |キー | 既定値 | そのほかの特性 | +----------+----------+------+-----+--------+----------------+ | id | int(11) | | PRI | NULL | auto_increment | | junktext | char(30) | 可 | | NULL | | +----------+----------+------+

    ITmedia エンタープライズ:LAMP vs. LAMP──mod_perlとmod_phpのパフォーマンス比較