Perl48 meets eval function
自分の仕事用に作ったPerl"ガラクタ"スクリプトをブラッシュアップしていくのが、ささやかな趣味の一つになってたりします。
『初めてのPerl 第3版(古っ!)』がバックボーンだったりする私ですが、いまだにこの本から新しい発見があります。
ほんっと読みたい所しか目に入ってないんだなぁと痛感。
今日見つけたのは eval関数。
複数URLのフォームに必要事項を入力しサブミットしていくという、自分用Perlスクリプトを同僚に公開したところ、
「エラーになったときに止まるのがイヤ。エラーを後でわかるようにチェックして、処理は次に進む感じがいい。」
という要望をいただいた。
論理的にできるだろうと漠然と思っていたものの、作成段階からトライ&エラーを何十回と繰り返してきた自分にとっては、使い勝手に不満が無かったりする。(どういう風に動いてるか熟知してるし、エラーの対処も慣れてるから)
という怠惰な感じでズルズルと来てたんだけど、なんとなく久しぶりに開いた『初めてのPerl』で出会ってしまいました。
evalちゃんに。
奇しくも、同僚の要望をそのまま実現する関数でした。
というわけで、
eval{
(〜登録処理〜)
};
# eval関数でキャッチしたエラーが存在する場合にエラー内容を表示する
if ($@){
print "On URL:$_ ,An error occurred ($@), continuing...\n";
}
というのを追記して、