とりあえず、敵を制すには敵を知れ。そういうわけでHSP、Hot Soup Processorについて。
初っ端からタイトルと同じ見出しを付ける何ともアホな行為をしていますが、とりあえず、こんにちは。
HSPというのは、インタプリタ型のプログラミング言語です。
……といってもまあ恐らく意味は分からないでしょう。
プログラミング言語はプログラムを作る言語ですが、それでは説明になっていません。
簡単に言えば、コンピューター(パソコン)に対して命令をするための言語で大体正しいと自分で思ってます。日本語とか英語とかでコンピューターに対してああしろこうしろと言ったところで通じるはずが無いのは当然です。じゃあどうすれば良いのかといえば、コンピューターが理解できる言葉を使ってやればいいわけですよ。あ、だからといって口に出さないように。
さて、HSPの大きな特徴はこんな感じ。
1つめ。文法はBASICを元にしており、非常にシンプルにできているので、すぐに覚えられます。小学生などの使用者が多いのもこれが理由かと思います。かくいう僕もそういう口ですし。
2つめ。世に出てから結構長いので、HSPについて取り扱うサイトは割と多いです。
さて、反対に欠点はどこかというと、自由度が低いという点があります。ある程度は自由にできるのですが、壁に当たるとそこからどうしようもなくなることが多いです。そうなった場合、拡張プラグインに頼る他なくなります。
しかし、「プログラミング」という世界に触れるには丁度良いと思います。
「実はパソコン自体あまり触ったことがない」という人はさっさと次に進んで環境を整えた方が良いと思います。あと仕組みとかどうでも良いという人とかも次の節へ。
さて、プログラミング言語がプログラムを作る言葉である事は説明しましたね。では、どのようにしてプログラミング言語(HSP)の文からコンピューターが本当に理解出来る言葉になるのかと。
まず、僕らが書いた文は、コンパイラというものに通されます。コンパイラは普通、「翻訳者」に例えられます。「プログラミング言語とはコンピューターが理解できる言葉」と説明したのに、何を翻訳するかって? 答えは簡単。コンピューターは、実はそれらを理解できないからです。知っている方も多いと思いますが、コンピューターは、実際のところ0と1(2進数)しか扱うことが出来ないのです。皆さんが今から書こうとしている物は全て文字列です。要は文字。コンピューターは文字や、文字列を理解してプログラムを実行することは一切不可能なのです。そこで、その文字列をコンピューターが理解できるものに変換(翻訳)してくれるのが、コンパイラの役目なのです。ソースコードをコンパイラに通して変換する作業をコンパイルと言います。
最初に書いた通り、HSPはインタプリタ型言語です。C言語などはコンパイル方式になります。
このインタプリタ型言語とはどういうものかというと、コンパイルを(プログラムの実行と同時に)リアルタイムで行うものです。例えるなら同時翻訳です。コンパイル方式では全てをコンパイルしてから実行します。こちらは、相手が全て言い切ってから翻訳をするのですな。よって、コンピュータは実行に専念できるのです。そのため、実行速度に違いが出てきます。1つの仕事(実行)に専念しているのと、2つの仕事(コンパイルと実行)を同時に行っているのでは、当然効率が違います。
インタプリタ型言語で有名なのはPerlや、PHPなどがあります。CGIやら何やらでおなじみですね。
ところで、e-wordsでのプログラミング言語の定義を見ると、中に最近では、簡易な言語仕様を持ち、処理速度は遅いが小規模なプログラムを簡単に記述することができる簡易プログラミング言語が増えており、これを「スクリプト言語」と呼ぶことがある。
という記述があります。HSPはどちらかといえば、この「スクリプト言語」に属します。
コンパイラ方式は実行するために必ずコンパイルをしなければなりません。HSPなどのインタプリタ型言語はその点、デバッグなどの作業を手軽に実行できます。
LastModified: 2008-08-15