sironekotoroの日記

Perl で楽をしたい

かんたんPerl 第6章 、第7章

かんたんPerl 第6章 枝分かれのifと真偽

いきなり首を縦に振りまくる事が書いてある

  • 200%同意する。

プログラミングは作業を自動化して人間を楽にするだけでなく、人間がやっていた仕事は実はどういう作業なのかを、分析して明らかにします。

  • 本当にその通りで、プログラミング学んでからは「仕事の無駄」とか、「業務フローの条件分岐」から外れようとする動きとか、敏感になった気がする。

    • というか、人間のやってる部分の仕事は業務フローに乗ってないパターンの判断だよなぁ・・・ちゃんとエラー処理を書いてれば人間(の仕事)いらなくなりそう。
    • 海外での ERP の使われ方は(実績のある)パッケージにあわせて業務フロー変えつつ ERP 導入するんだけど、日本の場合は現行の業務フローに ERP あわせようとして大爆死みたいな事を思い出したり。
  • モノを作り上げるため・楽をするため・あこがれから始めたプログラミングだったけど、これは本当に予期しなかった良い副作用。

閏年なら死ね!

  • (もしかして) レベル4デス ?
  • 条件分岐の定番は閏年判定だけど、「3のときだけアホになる」芸も定番だよなー
    • 芸とかギャグとかコントにも著作権あるんかな
    • FizzBuzz からプログラミング、というか Perl に興味持った事思い出した。

かんたんPerl 第7章 繰り返しと脱出

  • while で無限ループしてしまって強制停止を繰り返すマン登場!
  • お気に入りの制御構造は foreach です。無限ループしないから。

なるほど

  • 文字列検索の index で対象の文字があるかどうか、あれば何文字目か?で数字が返れば真、でsayが実行される、と。なるほど
  • うちだったら正規表現で /r/ とか書いてたけど、 index 使うのもシンプルで良いな。
    • というか、 index あまり使った事ない。
use strict;
use warnings;
use 5.010;

say "牡蠣の食べごろは";
my @month
    = qw /January February March April May June July August September October November December/;

foreach my $month (@month) {

    if ( index( $month, "r" ) > 0 ) {
        say $month;
    }
}