perl/perlの基本構造〜モジュール、サブルーチン等の関係〜

前々から、モジュールとかサブルーチンとかの区別がはっきりついてませんでした。別に、ついてなくてもいいのかもしれないけど、ちょっと気になっていたのですよ。最近は、なんとなく違いを感じることはできていましたが、人に違いを説明しろ、と言われるとできないだろうなー、くらいの理解レベル。今日開いていた本にちょっと書いてあったので、せっかくだし違いを勉強してみました。

最小単位:token
=>意味を持つ文字の並びのこと(自然言語の単純な言語に相当。理科でいえば、分子みたいなものだそうです。)
例),数や算術演算子

以下、下に行くほど、構造の大きさが大きくなる。
◎tokenを並べるとコマンド(command)になる(自然言語では、命令形の文に相当)
イメージ:token1 token2 token3
※tokenの間に空白はもうけなくても良い。しかし、空白がないと単一のtokenと見なされる場合は、必ず空白を入れる必要がある。

◎{}(ブレース)でコマンドを囲むと、ブロック(block)にすることができる。
イメージ:{command1,command2,command3}

◎blockを組み合わせると、サブルーチン(subroutine)を作ることができる。

◎subroutineを組み合わせると、モジュール(module)を作ることができる。

◎moduleを組み合わせると、プログラム(program)になる。

これで、言葉も正しく使えるようになるなー。