この前WebService::Bitlyというモジュールを作ってCPANに登録したので、忘れないうちにそれを行なうまでの手順をメモしておきます。これからCPANモジュールを作る人の参考になればと思います。 0.いろいろなドキュメントを読んでおく 間違ったモジュールをCPANに上げると迷惑がかかるようなので、最低限下のドキュメントは読んでおいたらいいと思います。 PAUSE: The CPAN back stage entrance perlnewmod - 新しいモジュールを配布するには - perldoc.jp 1.モジュール名を決めて、ひな形を作る まずモジュールの名前を決めます。CPANモジュールは、「このようなモジュールはこの名前空間」のような慣習があるようなので、それを考えながら決めます。 名前が決まったら、モジュールのひな形を作ります。僕はModule::Starter::PB
Perlのモジュールを書こうと思うなら、Foo.pm や Makefile.PL など、必要なファイルをいちいち手で書いて揃えなくても、一括で雛形を揃えてくれる便利なコマンド(モジュール)があるので、それを利用します。 index module-setup Perlモジュールの雛形づくりに module-setup コマンドは強力な助けになります。 module-setup コマンドは Module::Setup をインストールすると付いてきます。 $ cpanm Module::Setup Module::Setup がインストールできたら、module-setup コマンドを初期化しておきます。 何も難しいことはなく、--init オプションをつけてコマンドを叩いたら、良しなに質問に答えていくだけです。 $ module-setup --init Do you use SVN? [yN
Andy Lester <andy at petdance.com> Alastair Douglas Alexandr Ciornii Andreas Huber Andrew Grangaard Andy Lester Bernhard Wagner bscan Chase Whitener dakkar Dave Doyle David Precious David Steinbrunner dependabot[bot] Desmond Daignault Ed Avis Evan Zacks Ferenc Erki Flavio Poletti Florian Schlichting Gabor Szabo Gareth Tunley Gil Magno Graham Knop gregor herrmann Grigor Karavardanyan James Raspass
http://www.postlbs.org/postlbs-cms/ja/geocoder オープンソースの GeoCoder。「ジオコーダーじゃ」と読むらしい。 これはすごいな。 早速使ってみた。 まずデータを揃えるのが結構大変。 ゆうびんホームページの郵便番号データと国土交通省から街区レベル位置参照情報のデータを取ってきて、Windows専用のデータ変換ツールでデータを構築する必要がある。 国土交通省のデータのダウンロードがすさまじくだるい・・・ 普通にクリックしていくと多分全部集めるのに200回ぐらいクリックしなきゃいけない。 FireBugで多少楽はしたけど大変だった。 このありえないインターフェースはなんとかならんのかなぁ。 で使ってみた感じは、検索は非常に速い。 精度はGoogleMapsのGeoCoderとかにはかなわないけど、それなりにいい感じ。 一番詳細なレベルではてな
NAME Lingua::JA::Numbers - Converts numeric values into their Japanese string equivalents and vice versa VERSION $Revision: 0.5 $ $Date: 2015/03/10 11:04:45 $ SYNOPSIS use Lingua::JA::Numbers; # OO Style my $ja = Lingua::JA::Numbers->new(1234567890, {style=>'romaji'}); # JuuNiOkuSanzenYonHyakuGoJuuRokuManNanaSenHappyakuKyuuJuu # $ja->get_string is implictly called print "$ja\n"; print $ja+0, "\n";
2008年11月21日00:15 カテゴリLightweight Languages perl - LWP::UserAgentで進捗表示しつつダウンロード 食後のデザートとして手頃なサイズの問題だったので。 Ruby Net::HTTP で進捗表示しつつダウンロードのメモ - 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 - subtech #!/usr/local/bin/perl # # $Id: lwp-callback-example.pl,v 0.1 2008/11/20 15:16:48 dankogai Exp dankogai $ # use strict; use warnings; use LWP::UserAgent; use File::Basename; my $uri = shift || die "$0 http://example.com/bi
問題 @a = (1,2,3); @b = (1,2,3); のような配列があったとして、これらの中身が同じ(@a = @b) であることを確認したいと思います。 細かい条件として、値は正の数字のみ(負はない、)で並び順は気にしない、かつ同じ番号はないという事にします。 かんたんに考えると、次の二つの条件を満たせればいいはずです。 二つの要素の数が同じであること 先頭から比較して、末尾までの各項目の内容が等しいこと 素直にコーディングすると... sub is_same($$){ my($a,$b) = @_; # (1)二つの要素の数が同じであること return 0 if @$a != @$b; # (2)先頭から比較して、末尾までの内容が等しいこと for (0..$#$a){ return 0 if $a->[$_] != $b->[$_]; } return 1; } というサブ
正直言いますと、個人的には定数って殆ど使わないんですよね。 昔はちょこちょこ使ってたんですが、最近は定数となりうる物は基本的にYAML等外部ファイルに持たせて変更可能にすることが多いのでまったく使ってません。 ですがそれでもPerlで定数を使いたい時にはどーすんの?っていう時のために軽くここにまとめておきます。 言わずもかなPerl5.8にはconstantという定数を定義できる標準モジュールがあります。 use strict; use constant PI => 3.14; # 表示 print PI; # 3.14 # 上書きしようとすると・・・ PI = 3; # Can't modify constant item in scalar assignment とこのように上書きしようとするとエラーを吐いて死にます。 しかも実行時ではなく、コンパイル時にエラーを吐きます。 実はこのc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く