Home

技術系のメモと日々の雑感

Template-Toolkit のタグについて

Template-Toolkit のタグの中の記述って自由すぎるなぁ。
ある日、他の人が作ったテンプレートを見ていたら

<a href="[% site.urlstr=val1;#PrevUrl(site); %]">PrevPage</a>

なんて行が。
まだよく理解してない頃で、1つのタグの中に複数の文を書けることとか、途中からコメントにできることを知らなかったので、悩んだ挙句作った人に
「これは何をしてるんですか?」
と聞くと
「あ、その行はもう使ってないから消しといて」
って、おいおい・・・。
構文的には合ってても、変数の代入と参照ぐらいはタグを分けた方が見やすいんじゃないかなぁ。
規則で [% PERL %] は使わないことになってるのでまだマシだけど、これも使っていいことになっていたらと思うとコワイよ。

Perl の flock

あんまり集中せずに Perl のソースを触っていたら

flock() on closed filehandle FH at (eval 2) line 1.

という初めて見るメッセージが。
あ、close とロック解除の順番が逆になってるってことか。
親切だな〜。
ところで

eval "flock(FH, 8);";
close(FH);

って書いた場合、CGI なんかだと、アクセスが集中したときにロック解除と close のごくわずかな間に別プロセスが割り込む可能性があるんじゃないかな。
だったら、ロック解除は close に任せてしまった方がいい?
考えすぎか。