タグ

ブックマーク / perl-users.jp (13)

  • DBIx::*ユーザのためのDBD::SQLite - Articles Advent Calendar 2011 Dbix

    今日はDBIx::モジュールのテストなどでときおり見受けられるDBD::SQLiteのハマリどころとその対策を紹介します。 後片づけ編 (オブジェクトではなく)クラス内部でコネクションを張りっぱなしにしてしまうDBIx系モジュールでありがちなことですが、テストの後始末をするときに、DBD::SQLiteで開いておいたデータベースを閉じずに削除しようとすると、Windows環境などではパーミッションの問題でエラーになります。 my $dbh = DBI->connect('dbi:SQLite:foo.db'); ... unlink 'foo.db'; 明示的にデータベースを閉じてからデータベースを削除するのが王道ですが、 my $dbh = DBI->connect('dbi:SQLite:foo.db'); ... undef $dbh; unlink 'foo.db'; 並列処理を行

    DBIx::*ユーザのためのDBD::SQLite - Articles Advent Calendar 2011 Dbix
    soh3914
    soh3914 2013/10/07
  • /articles/advent-calendar/2011/teng

    soh3914
    soh3914 2013/10/03
  • /articles/advent-calendar

    soh3914
    soh3914 2013/09/23
  • PDLで数値計算 - Articles Advent Calendar 2012 Casual

    こんにちは、週末海でマンボウを獲っていたらラギアクルスに襲われた@hirataraです。今回はPerl Data Languageについて紹介します。 Perl Data LanguageとはMATLABやNumpy、Rなどと同様に、多次元配列を効率よく扱って数値計算を実現するためのライブラリです。cpanmで普通にインストールすれば使えますが、グラフを描画したり格的な数値計算のライブラリであるGSLのバインディングを利用したりする場合はhomebrewでゴニョゴニョしたりする必要があるので、多少頑張って下さい。 基的にはpdl関数でオブジェクトに変更してから使います。 use PDL; my $pdl = pdl [[1, 0, 0], [0, 1, 0], [0, 0, 1]]; print $pdl; 【実行結果】 [ [1 0 0] [0 1 0] [0 0 1] ] pdlが

    PDLで数値計算 - Articles Advent Calendar 2012 Casual
    soh3914
    soh3914 2013/07/13
  • Chart::Gnuplotでグラフを生成してみよう - JPerl Advent Calendar 2009

    はじめに Perlでグラフを生成するためのモジュールとしては,グラフィックライブラリGDを利用したGD::Graphとか,GoogleChart APIを利用したGoogle::Chartとかが挙げられますが,最近,ふとしたきっかけで,Chart::Gnuplotなるモジュールの存在を知り,実際に使ってみたところ,なかなかいい感じでした. 今回は,そのChart::Gnuplotについて簡単に紹介してみます. Chart::Gnuplotの概要 グラフ描画系のツールのひとつにgnuplotというものがあります. http://www.gnuplot.info/ スクリーンショットを2点. http://farm3.static.flickr.com/2663/4166426208_a8aa809708_o.png http://farm3.static.flickr.com/2646/41

    soh3914
    soh3914 2013/04/06
  • prove についてのおさらい - Articles Advent Calendar 2011 Test

    はじめに 忘年会シーズンまっただ中で皆さんは毎日お酒を飲んでいることでしょうが、僕は友達が少ないため忘年会とか全然無いので財布はまだホットな状態なんですが、なぜ僕の妹は小鳩ちゃんじゃないんだっていうかそもそも妹いないしもう死ぬって感じの xaicron です。こんにちは。 そろそろ prove について簡単に説明しときますよっと。 prove のよく使うオプション prove にはいっぱいオプションがあるんですが、ここではよく使いそうなやつをピックアップして紹介しちゃいますよ! -v, --verbose # いっぱい出力する -l, --lib # lib を INC についかする perl -Ilib 相当 -b, --blib # blib/lib とか blib/arch を INC につかする -Mblib 相当 -c, --color # カラフルになる! MSWin32 だと

    prove についてのおさらい - Articles Advent Calendar 2011 Test
    soh3914
    soh3914 2013/03/02
  • List::Compareで二つの配列の集合を扱うの巻 - Articles Advent Calendar 2012 Casual

    こんにちは!hirobanexです!日はフランクに、2つの配列の集合を良い感じに取り扱えるList::Compare のご紹介です。podみると、いろいろなメソッドとかオプションがあるのですが今回ご紹介するのは、 get_intersection get_union get_Lonly get_Ronly の基的な4つのメソッドです。 取り扱う集合とメソッドの関係 それぞれのメソッドの機能をコトバで説明するよりも図で説明したほうがわかりやすいのですが、ベン図のあれっていえばだいたいの方はわかると思うので、図は出しませんwというわけで、それぞれ以下のようになります。 get_intersection : 2つの配列の共通部分を取り出す get_union : 2つの配列で合わせた部分を取り出す(List::MoreUtilsのuniq関数と同じ) get_Lonly : 2つの配列のうち

    List::Compareで二つの配列の集合を扱うの巻 - Articles Advent Calendar 2012 Casual
    soh3914
    soh3914 2013/02/18
  • 非破壊な s/// のススメ

    正規表現の置換でときどき困るのは、元の文字列が変更されてしまうことです。そのため、たとえば文字列を URI escape する際には、以下のように別変数にコピーした上で、正規表現を適用することになります。 my $escaped = $search_str; $escaped =~ s/([^0-9A-Za-z_.!~*'()-])/'%' . uc(unpack('H2', $1))/eg; my $url = "http://example.com/search?q=$escaped"; 以前、この点がめんどくさいなーとブログに書いたところ、kazeburo さん他に以下のようなテクニックを教えていただきました。 use List::MoreUtils qw(apply); my $url = 'http://example.com/search?q=' . apply { s/([^

    soh3914
    soh3914 2012/08/16
  • Perl::Tidyで明快コーディング! - JPerl Advent Calendar 2009

    Perlのコードを書くとき、CPANモジュールを作成するとき、そして就職活動時のエントリーで課題のperlスクリプトを提出する時に超実益的で役立つ、Perl::Tidyを紹介してみます。 使い方 以下のような汚いコードがあるとします。mud10years.plとでも名付けることにします。 use strict;use warnings;my $module="Perl::Tidy";my $user= "haoyayoi";my $desc1=" is so coolist module.";my $desc2= " Lets try it!";my $deschash = {module=>"$module", desc =>$desc1. $desc2, }; print $deschash->{module}.$deschash->{desc}." by $user"; このコードを

  • Acme::Porn::JP - Articles Advent Calendar 2010 Acme

    こんにちはOppai-Detectプロジェクト研究室のyusukebeです。今日はAcme::Porn::JPというgithubに僕が置いているAcmeなモジュールについて紹介します。 インストールする $ git clone git://github.com/yusukebe/Acme-Porn-JP.git $ cd Acme-Porn-JP $ perl Makefile.PL $ make $ make install 使う こんな感じでリストを取得できます。 use Acme::Porn::JP; my $porn_jp = Acme::Porn::JP->new(); my $actress_list = $porn_jp->actress(); print $actress_list->[0] . "\n"; my $category_list = $porn_jp->cat

    Acme::Porn::JP - Articles Advent Calendar 2010 Acme
  • Acme::AKB48 - Articles Advent Calendar 2010 Acme

    最近大画面テレビを買ったのですが来ている電波がデジタル化されていませんでした。 こんばんは。hidekです。 というわけで、今回は国民的スーパーアイドルグループAKB48を堪能できるモジュールを紹介させてもらいます。 リポジトリはこちらです。 AKB48については最近の活躍で皆さんよくご存じだと思うので多くは説明しませんが、現在チームA, チームK, チームBの各16人の正規メンバーと24人の研究生からなるアイドルグループです。 個性的なキャラが多いので比較的覚えやすいのですが、テレビを全く見ない貴兄や、2次元しか興味がない貴兄にとっては、ひょっとしたら覚えられないことがあるかもしれません。そんなことになったら学校や職場で会話に入れず肩身の狭い思いをすることになるでしょう。 そんなときのために是非このモジュールを活用してください。 このモジュールは前回でも紹介されたAcme::Mornin

    Acme::AKB48 - Articles Advent Calendar 2010 Acme
  • Perl から Growl をちゃんと使おう - Articles Advent Calendar 2010 Hacker

    こんにちわ。Growl 大好きっ子 typester です。 重たいバッチジョブを走らせている間、別の作業をする。ジョブが終わったらデスクトップに Growl を表示させて処理の完了を知る。 その合間にもRSSから配信されたニュースや自分への Mention を Growl 表示し、あっという間に情報を操作する。 誰もが憧れる Hackish な作業風景ですね。Mac ユーザであればその他の活用方法を知ってる人も数多くいるでしょう。 でもperlbrewで64bit perlいれてるからMac::Growlがうまくインストールできないし... そんな風に思っていた頃が僕にもありました。 Cocoa::Growl http://search.cpan.org/dist/Cocoa-Growl/ そんな不満を打破するべく僕は Cocoa::Growl を書いた。 XS で Objective-

    Perl から Growl をちゃんと使おう - Articles Advent Calendar 2010 Hacker
    soh3914
    soh3914 2010/12/16
  • コマンドラインで使えるかもしれないツール等あれこれ - Articles Advent Calendar 2010 Casual

    鎌倉で毎日どんぶりべてます、sugyanです こんにちは! 皆さん、ターミナルやシェルは何をお使いでしょうか?僕は現在MacにてiTerm2+zshを使っています(あんまり使いこなせてませんが…)。 プログラミングして書いたコードを実行するには、ターミナルでコマンドを打つのがほぼ必須ですよね。皆さんも毎日たくさんのコマンドをターミナルで叩いていることと思います。 CPANで配布されているモジュールたちは、Perlスクリプト内でuseして使うためのものだけではなく、シェルから実行できるコマンドが用意されている場合もあります。[/articles/advent-calendar/2010/casual/1:title=1日目]で紹介されたperlbrewやcpanmも、Perlで書かれたコマンドラインツールですよね。 今回はそんなコマンドたちを紹介してみようと思います。 ■開発環境系 per

    コマンドラインで使えるかもしれないツール等あれこれ - Articles Advent Calendar 2010 Casual
    soh3914
    soh3914 2010/12/03
  • 1