<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Perl on oinume journal</title>
    <link>https://blog-lampetty-net.web.app/tags/perl/</link>
    <description>Recent content in Perl on oinume journal</description>
    <generator>Hugo</generator>
    <language>ja</language>
    <lastBuildDate>Sat, 21 Aug 2010 16:08:13 +0900</lastBuildDate>
    <atom:link href="https://blog-lampetty-net.web.app/tags/perl/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Perl開発環境としてのEmacsの設定</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/384/</link>
      <pubDate>Sat, 21 Aug 2010 16:08:13 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/384/</guid>
      <description>&lt;p&gt;最近社内でvim勉強会があったりして「vimもいいなぁ」と思っていたのですが、やっぱりキーバインドに慣れなくってEmacsに戻ってきました。最近EmacsでPerl関連の設定を見なおしたので、メモがてら書いておきます。自分がPerlのコードを書くときに使っているelispは以下の5つです。&lt;/p&gt;</description>
    </item>
    <item>
      <title>コマンドラインオプションを解析するPerlモジュールGetopt::Compact</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/374/</link>
      <pubDate>Sat, 10 Apr 2010 12:04:12 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/374/</guid>
      <description>&lt;p&gt;Perlでコマンドラインオプションを解析する場合、大体は標準添付されているGetopt::Longを使うと思いますが、自分は3年前ぐらいから &lt;a href=&#34;http://search.cpan.org/dist/Getopt-Compact/lib/Getopt/Compact.pm&#34;&gt;Getopt::Compact&lt;/a&gt; というモジュールに出会い、それ以降大抵の場合はこれを使っています。このモジュールの良いところは&lt;/p&gt;</description>
    </item>
    <item>
      <title>DBI-&gt;connectのHandleError</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/366/</link>
      <pubDate>Wed, 10 Feb 2010 15:02:28 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/366/</guid>
      <description>&lt;p&gt;DBIのちょっとしたTIPSです。DBIには connect する時に&lt;/p&gt;&#xA;&lt;p&gt;DBI-&amp;gt;connect(&#39;dbi:mysql:database=hoge&#39;, &#39;root&#39;, &#39;whatever&#39;, { ... });&lt;/p&gt;&#xA;&lt;p&gt;とオプションを渡すことができます。(たとえば RaiseError) 。このオプションのひとつに HandleError というものがあってデバッグにはなかなか便利なので紹介してみます。端的にいうと HandleError でサブルーチンを登録しておくと、エラーが発生したときにこのサブルーチンを使ってエラーを投げてくれるようになります。以下は具体例。&lt;/p&gt;</description>
    </item>
    <item>
      <title>PerlのDateTimeとTime::Pieceモジュールのベンチマーク</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/352/</link>
      <pubDate>Sat, 05 Dec 2009 15:12:24 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/352/</guid>
      <description>&lt;p&gt;Perlで日付関連の処理をする代表的なモジュールに&lt;a href=&#34;http://search.cpan.org/dist/DateTime/lib/DateTime.pm&#34;&gt;DateTime&lt;/a&gt;というものがありますが、メモリ消費量が激しいのがずっと気になっていました。でで、&lt;a href=&#34;http://search.cpan.org/dist/Time-Piece/Piece.pm&#34;&gt;Time::Piece&lt;/a&gt;が5.10.1からPerlに標準添付になったという話を聞いて、乗り換えようかどうか検討しています。&lt;a href=&#34;http://digit.que.ne.jp/work/wiki.cgi?Perl%E3%83%A1%E3%83%A2%2FTime%3A%3APiece%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB&#34; title=&#34;Perlメモ/Time::Pieceモジュール - Walrus, Digit.&#34;&gt;Perlメモ/Time::Pieceモジュール - Walrus, Digit.&lt;/a&gt;を見ると、DateTimeでできることは大体できるので、以下のユースケースでの速度面を測ってみます。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Text::MicroTemplate 0.10で速度が速くなっている件</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/350/</link>
      <pubDate>Sat, 21 Nov 2009 02:11:11 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/350/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;http://d.hatena.ne.jp/gfx/20091120/1258695709&#34; title=&#34;Now Text::MicroTemplate is even faster than HTML::Template::Pro - use GFx::WebLog;&#34;&gt;Now Text::MicroTemplate is even faster than HTML::Template::Pro - use GFx::WebLog;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Text::MicroTemplate 0.10で動作速度が改善されたとのことなので、自分のところでもベンチマークしてみました。&lt;/p&gt;&#xA;&lt;p&gt;$ perl benchmark_templates.pl 1&lt;/p&gt;&#xA;&lt;p&gt;Perl/5.10.0 (x86_64-linux-gnu-thread-multi)&lt;/p&gt;&#xA;&lt;p&gt;HTML::Template/2.9&lt;/p&gt;&#xA;&lt;p&gt;HTML::Template::Compiled/0.94&lt;/p&gt;</description>
    </item>
    <item>
      <title>Text::MicroTemplateとHTML::Template::Proの比較</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/348/</link>
      <pubDate>Sat, 21 Nov 2009 01:11:04 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/348/</guid>
      <description>&lt;p&gt;PerlでWebアプリを作る時のテンプレートエンジンをどれにしようか相変わらず模索中なのですが、以下の2つのエントリーで動作速度とメモリについて調べた結果、どうやらText::MicroTemplateとHTML::Template::Proのどちらかを選択するのが良いだろうと思っています。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Text::MicroTemplateのメモリ使用量をベンチマーク</title>
      <link>https://blog-lampetty-net.web.app/posts/memory-usage-of-text-micro-template/</link>
      <pubDate>Sun, 15 Nov 2009 13:11:31 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/memory-usage-of-text-micro-template/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://blog-lampetty-net.web.app/tech/index.php/archives/342&#34;&gt;Text::MicroTemplateの速度を簡単にベンチマーク&lt;/a&gt;でText::MicroTemplateの動作速度を簡単にベンチマークしましたが、今回はメモリ使用量を他のテンプレートエンジンと比較してみました。環境はUbuntu 9.04 amd64, Perl 5.10.0 で、&lt;a href=&#34;http://search.cpan.org/dist/GTop/&#34;&gt;GTop&lt;/a&gt;を使って測っています。&lt;/p&gt;&#xA;&lt;h3 id=&#34;useした時のメモリ使用量&#34;&gt;useした時のメモリ使用量&lt;/h3&gt;&#xA;&lt;p&gt;独自に作ったスクリプト(use_memory_size.pl)でuse時のメモリ使用量を測ってみます。&lt;/p&gt;&#xA;&lt;p&gt;$ ./use_memory_size.pl&lt;/p&gt;&#xA;&lt;p&gt;3.2M : use HTML::Template&lt;/p&gt;&#xA;&lt;p&gt;11.7M : use HTML::Template::Compiled&lt;/p&gt;</description>
    </item>
    <item>
      <title>Text::MicroTemplateの速度を簡単にベンチマーク</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/342/</link>
      <pubDate>Sat, 14 Nov 2009 16:11:34 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/342/</guid>
      <description>&lt;p&gt;&lt;strong&gt;2009/11/15 追記&lt;/strong&gt;：&lt;a href=&#34;#comment-152&#34;&gt;tokuhiromさんのコメント&lt;/a&gt;を受けて、Text::MicroTemplate以外のテンプレートファイルにHTMLエスケープの処理を追加してベンチマークを取り直しています。&lt;/p&gt;&#xA;&lt;p&gt;Perlのテンプレートエンジンでどれを使おうか悩んでいるので、Text::MicroTemplateをはじめとする以下のテンプレートエンジンの速度を簡単にベンチマークしてみました。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Perlで楽天ブックスジャンル検索APIを使う</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/339/</link>
      <pubDate>Wed, 23 Sep 2009 14:09:14 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/339/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://blog-lampetty-net.web.app/tech/index.php/archives/338&#34;&gt;PerlでAmazon Product Advertising APIのBrowseNodeLookupを行なう&lt;/a&gt;の楽天版です。Amazon Product Advertising APIはRESTしかないのですが、楽天ウェブサービスはRESTとJSONに対応しているので、今回はJSONを使ってみます。&lt;/p&gt;</description>
    </item>
    <item>
      <title>PerlでAmazon Product Advertising APIのBrowseNodeLookupを行なう</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/338/</link>
      <pubDate>Tue, 22 Sep 2009 18:09:10 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/338/</guid>
      <description>&lt;p&gt;AmazonのProduct Advertising APIで、あるカテゴリの下にあるカテゴリ(BrowseNode)を取得するPerlスクリプトを書いてみました。最初は&lt;a href=&#34;http://search.cpan.org/dist/Net-Amazon/lib/Net/Amazon.pm&#34;&gt;Net::Amazon&lt;/a&gt;を使っていたのですが、オブジェクトを大量に生成するためかとてつもなく重いのと、返ってくるオブジェクトの構成がよくわからなかったので、自前で処理してみるとさくっとできました。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Perlでパッケージに定義されているメソッドを出力する</title>
      <link>https://blog-lampetty-net.web.app/posts/wp/274/</link>
      <pubDate>Tue, 14 Mar 2006 15:03:52 +0900</pubDate>
      <guid>https://blog-lampetty-net.web.app/posts/wp/274/</guid>
      <description>&lt;p&gt;Perlであるパッケージに定義されているメソッドを調べたい場合は、シンボルテーブル(%パッケージ名::)をダンプしてやればオッケーなようです。例えばClass::Accessorのシンボルテーブルをダンプするには下記のように書けばOK。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
