タグ

2014年7月25日のブックマーク (4件)

  • Perlベストプラクティスのベストプラクティスじゃないやつをまとめてみた | おそらくはそれさえも平凡な日々

    Perlベストプラクティス Perlベストプラクティス(略してPBP)という良いがあります。僕自身もPerlを学ぶ過程で非常にお世話になったなのですが、以下の様なことが度々指摘されています。 bestって書いてあるけど「著者の」bestプラクティスなので偏りがあることも 「決して」とか「必ず」とかが多いけどあんま真に受けてはいけない このを書くために書かれたであろうCPANモジュールとかがあって、しかも公開されてないものまである 致し方ないけど現在の状況にマッチしない古い情報もある なので、PBPの何がベストじゃないのかについてまとめてみることにした。前からやりたかったんだけど、思い立ってやった。 まとめてみたら、思っていたほどには項目が上がってこなかったので、やっぱPBPは良いだなと改めて思いました。なので、このエントリーがこれからPBPを読む人の助けになれば良いなと思います。

    lapis25
    lapis25 2014/07/25
  • List::UtilsBy

    NAME List::UtilsBy - higher-order list utility functions SYNOPSIS use List::UtilsBy qw( nsort_by min_by ); use File::stat qw( stat ); my @files_by_age = nsort_by { stat($_)->mtime } @files; my $shortest_name = min_by { length } @names; DESCRIPTION This module provides a number of list utility functions, all of which take an initial code block to control their behaviour. They are variations on simi

    List::UtilsBy
    lapis25
    lapis25 2014/07/25
  • 適当なscriptでは use autodie; する - tokuhirom's blog

    chdirのときもエラー処理は必須ですな〜自分で使うスクリプトだからええ加減な書き方してた〜反省 #ubuntu #perl http://twitter.com/mukumaru/status/20694618336 perl5.10.1 以後では autodie.pm が標準添付されているので、それを利用するとよい。 % perl -E 'use autodie; chdir "/foo"' Can't chdir('/foo'): No such file or directory at -e line 1こんなかんじ。use strict; use warnings; につづけて use autodie; と書くだけ。 使い捨てスクリプトでは use autodie; しておくと、いちいち組み込み関数のエラー処理かかなくていいので便利。

    lapis25
    lapis25 2014/07/25
  • おそらくはそれさえも平凡な日々: PerlのIdiomをCPANモジュールを使って可読性を高くしてみる

    今年からKayac技術部では以前以上にPerlを推進する方向で進めています。そんな中でこれまでPerlを書いたことのないエンジニアにもPerlを書いてもらうことも多くなってきたのですが、PerlのIdiomがやはりわかりづらいんだなぁということを感じています。 割りとサクッとやっつけでコードを書くことが出来るのもPerlの良い点ですが、まあ分かりづらいよね...、と言うことで最近はPerlに慣れない人に対しても可読性が高くなるように多少心がけています。 てことで、PerlのIdiomとそれを読みやすくしたものを幾つか。 ファイル一気読み こんな感じで書いてしまうことが多いと思います。 use autodie; も併用することが多いので、or dieとかも書かない感じ。 my $content = do {local $/; open my $fh,'<:utf8',$file_name;<

    lapis25
    lapis25 2014/07/25