タグ

ブックマーク / gfx.hatenadiary.org (3)

  • each()は遅い上に微妙な問題も起きやすい - Islands in the byte stream (legacy)

    特別な条件がないかぎり、each()は使うべきではありません。代わりにkeys()/values()を使うべきです。その理由は2つあります。 each()は遅い each()でハッシュ全体をループするのは遅いです。これは、keys()/values()がその内部の値をそのまま参照する*1のに対し、each()は代入しないとその値を使えないからです。 ベンチマーク: #!perl use strict; use warnings; use Benchmark qw(cmpthese); my %hash = map { $_ => $_ } ( 1 .. 10000 ); cmpthese -1, { each_k => sub { while(my $key = each %hash) { } }, each_kv => sub { while(my($key, $value) = eac

    each()は遅い上に微妙な問題も起きやすい - Islands in the byte stream (legacy)
  • プログラミング初心者にオススメのPerl本 - Islands in the byte stream (legacy)

    この時期、Perlを学び始める方も多いと思います。そこでプログラミング初心者がPerlを学ぶのに適したを、私が実際に読んだことのあるものの中から選んでみました。 1冊目 1冊目はなんでもいいと思うのでとりあえず定番としてリャマを挙げておきます。 初めてのPerl 第5版 作者: Randal L. Schwartz,Tom Phoenix,brian d foy,近藤嘉雪出版社/メーカー: オライリージャパン発売日: 2009/10/26メディア: 大型購入: 22人 クリック: 293回この商品を含むブログ (41件) を見るこれで基的なPerlの文法が学べるはずです。この手の入門書は「課題」がつきものですが、すべて解く必要はないと思います。幾つか気になるもの・面白そうなものだけ試してみればいいでしょう。 1冊目読了の辞典では、以下のプログラムの簡易バージョン*1を実装できるよう

    プログラミング初心者にオススメのPerl本 - Islands in the byte stream (legacy)
  • 『CPANモジュールガイド』の感想 - Islands in the byte stream (legacy)

    [twitter:@tomita]さんの『CPANモジュールガイド』を献いただきました。ありがとうございます。 Perl CPANモジュールガイド 作者: 冨田尚樹,タナカユカリ出版社/メーカー: ワークスコーポレーション発売日: 2011/04/08メディア: 単行(ソフトカバー)購入: 20人 クリック: 2,028回この商品を含むブログ (21件) を見るText::XslateやData::Cloneなど、私が書いたりメンテナンスしているモジュールもいくつか取り上げていただきました。 Perlの文法等の説明は基的にしていないため、入門書を一冊終えたあたりが想定読者なのかなという印象です。このを読めば、DB接続からテキスト処理、画像処理、HTML関係のアレコレやデスクトップ通知など、Perlで作るアプリケーションで必要なことはほぼ網羅できるのではないでしょうか。 目次はひたす

    『CPANモジュールガイド』の感想 - Islands in the byte stream (legacy)
  • 1