唯一の単純実行文は、副作用を目的として評価される式です。個々の単純実行文 は、それがブロックの最後の文でなければ、お尻にセミコロンを付けなくてはな りません。ブロックの最後の文では、セミコロンが省略可能です。(ブロックが 複数の行から成るのであれば、やはりセミコロンは付けた方が良いでしょう。あ とで、行を増やすこともあるでしょうから。) eval {} や do {} のように複合 文に見える演算子もありますが、これは複合文ではありません (式の中の「項」 でしかありません) し、実行文の最後の項となった場合には、明示的にセミコロ ンが必要です。
どんな単純実行文にも、最後のセミコロン (もしくは、ブロックの終わり) の直 前に 1 つだけ修飾子を付けることができます。修飾子としては:
if EXPR unless EXPR while EXPR until EXPR
が使えます。
if 修飾子と unless 修飾子は、英語ができる方なら、期待通りの意味となりま す。while 修飾子と until 修飾子も通常の "while loop" の意味 (条件が先に 評価される) となりますが、do-BLOCK (と現在は使わないようにしている do-SUBROUTINE 文) に対して使用すると、条件が評価される前に 1 度だけブロッ クが実行されます。これは:
do { $_ = <STDIN>; ... } until $_ eq ".\n";
のようなループが書けるようにするためです。perlfunc manpage を参照してく ださい。後述するループ制御文は、この構文では使用できないことにも注意して ください。修飾子にはループラベルを付けることができないからです。ごめんな さい。そういったことがしたい場合には、別のブロックを被せてしまうとよいで しょう。)
Go to the first, previous, next, last section, table of contents.