Building programs#
Fortran, C, C++, Java などの言語には特定の共通点があります。つまり、任意の言語でコードを記述した後、そのソースコードから実行可能プログラムを構築する必要があることです。他の言語はインタープリタによって処理されます。つまり、ソースコードは特別なプログラムによって解析され、直接的な命令として扱われます。このタイプの言語の非常に簡単な例を 2 つ紹介します:Windows バッチファイルと Linux シェルスクリプトです。
このチュートリアルでは、Fortran を主な例として、第一タイプの言語に焦点を当てます。コンパイル済み言語の 1 つの利点は、実行可能プログラムを構築するために必要な構築プロセスが、人間が判読可能なソースコードを実行可能なコンピュータで実行できる効率的なプログラムに変換するために使用されることです。
注:このチュートリアルでは Windows と Linux オペレーティングシステムの例を示していますが、ワークフローと一般的な原則は macOS にも適用されます。
コンパイル済み言語#
簡単な例を見てみましょう。
program hello
write(*,*) 'Hello!'
end program hello
これは Fortran で記述できる最も単純なプログラムの 1 つです。もちろん、最も有名なプログラムの 1 つよりもわずかに応用しています。ソースコードでは簡単に表現できますが、このコードから構築された実行可能プログラムを実行すると、実際には多くの処理が行われます。
プログラムの名前を入力したコンソール(DOS ボックス、xterm など)に書き込めるように、コンピュータ上でプロセスが開始されます。
コンソールに「Hello!」というテキストを書き込みます。これを行うには、コンソールと適切に対話する必要があります。
実行が完了すると、奪っていたすべてのリソース(メモリ、コンソールとの接続など)をクリーンアップして終了します。
幸運にも、上級言語を使用するプログラマーはこれらの詳細をすべて考慮する必要はありません。実際に、この種のことについてはビルドプロセス(コンパイラとリンカ)で処理されています。