挨拶は基本

 言語を学ぶ上で、挨拶というのは基本となるものです。英語の教科書などでも、初っ端に "Hello , I am Meganesky" のような自己紹介の挨拶から始まっています。「やあ、メガネスキーだよ」ぐらいの意味ですね。英文の例にも関わらずロシア風の名前ですが、深い意味はありません。単に、何となく響きのよい名前を例にしたまでです。


 自己紹介の挨拶は、簡単な文章でありますが、完成し完結した英文です。


 文法的に解釈すれば、間投詞( Hello )、主語( I )、述語( am )、補語( Meganesky )であり、『主語(S)・述語(V)・補語(C)』といういわゆる第二文型の例ともなります。


 何かと新しいところにいけば付きまとう『自己紹介』という馴染みのあるところから、徐々に言語の深みへと向かっていこうという意図があるのでしょう。


 一方、プログラミング言語を学ぶ場合はどうでしょうか?


 プログラムで挨拶なんて……と思われる方もいらっしゃるかもしれませんが、プログラミングにおいても、起源は諸説あるのですが、挨拶から始めるのが一種の伝統となっています。


 Hello World. という言葉を聞いたことはありませんか?


 様々なプログラミング言語を学ぶ際に、最初に作るプログラムです。


 幾つか、 Hello World. の例を挙げてみましょう。


【C言語】

#include <stdio.h>

int main(int argc , char* argv[] ) {

 printf( "Hello World." );

 return 0;

}


【Java】

class HelloWorld {

  public static void main(String[] args) {

    System.out.println("Hello World.");

  }

}


【 Basic 】

10 PRINT "Hello World."


【Perl】

print "Hello World.";


 これらは、どれも画面に『 Hello World. 』というメッセージを表示するプログラムとなります。言語ごとにお約束があって C 言語や Java は色々手続きを踏んでいますが、実際に画面に表示させている部分はどの言語も似たりよったりだったりします。


 言語によって例外はありますが、概ね、英語を基本にした言葉を組み合わせてコンピュータへ指示を出すことになります。


 英語の挨拶文と同じように、『画面に挨拶文を表示する』という小さくとも一つの完結したプログラムを通して、必要なことを学ぼうというのが ” Hello World. ” の趣旨となります。


 書いて、動かしてみることで、プログラミングの世界に挨拶する。


 ちょっとばかりリリカルに表現すれば、そういう意味合いもあるのかもしれません。


 最初の段階としては、「こう書いたら文章が表示できるんだ!」ということが解れば御の字です。


 それが解った上で「じゃぁ、一行一行の意味はどうなんだろう?」と考えて理解を深めていけばよいのです。 C 言語と Java は文章を表示する以外にもなにやら書いていますが、最低限のプログラムとして成立させるためにその言語において省くことのできないお約束だということです。


 調子に乗って、四つの言語の例を挙げましたがそれぞれに細かい解説をしてもテンポが宜しくないので、プログラミング言語における『注釈』となるコメントを付加しておくに留めます。


 全部が理解できなくても全然構いません。なんとなく「ああ、そんなことやってるんだ……細かいことはわからんけど」ぐらいで十分です。


【C言語】


/* stdio.h というファイルの中身を参照します */

#include <stdio.h>

/* C 言語は main という部分から開始されます */

int main(int argc , char* argv[] ) {

 /* Hello World. と表示します。 */

 /* 最後の ; は文の終わりを示す . のようなものです */

 printf( "Hello World." );

 /* 何も問題はないことを示すために 0 を返します */

 return 0;

}


【Java】


/* HelloWorld クラスの宣言 */

class HelloWorld {

  // Java は main という部分から開始されます

  public static void main(String[] args) {

    // Hello World. と表示します

    // 最後の ; は文の終わりを示す . のようなものです

    System.out.println("Hello World.");

  }

}


【 Basic 】

05 REM Hello World. と表示します

10 PRINT "Hello World."


【Perl】

# Hello World. と表示します。

# 最後の ; は文の終わりを示す . のようなものです

print "Hello World.";


 とまれ、プログラミング言語も挨拶から入るんだなぁ、みたいなことを感じて貰えれば、本稿の趣旨は果たしたも同然です。『文芸的なアプローチでプログラミングについて適当につらつらと記述する』のがそもそもの方針なのですから。


 最後に、八つの命令だけで成立する難解プログラミング言語『 Brainf*ck 』の亜種で書かれた類似のプログラムをみてみましょう。


【眼鏡チック言語】

眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡さんメガネ眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡め・が・ね!めがねっ子メガネっ娘め・が・ね!眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡さんメガネ眼鏡眼鏡眼鏡眼鏡め・が・ね!めがねっ子メガネ眼鏡っ娘眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡っ娘っ娘眼鏡眼鏡眼鏡っ娘め・が・ね!眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡さんメガネめがねめがねめがねめがねめがねめがねめがねめがねめがねめがねめ・が・ね!めがねっ子メガネ眼鏡っ娘め・が・ね!眼鏡眼鏡眼鏡眼鏡眼鏡さんメガネ眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡め・が・ね!めがねっ子メガネっ娘め・が・ね!眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡さんメガネ眼鏡眼鏡眼鏡眼鏡め・が・ね!めがねっ子メガネっ娘眼鏡眼鏡っ娘めがねめがねめがねめがねめがねめがねっ娘眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡っ娘めがねめがねめがねめがねめがねめがねめがねめがねめがねっ娘め・が・ね!眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡眼鏡さんメガネめがねめがねめがねめがねめがねめがねめがねめがねめがねめがねめ・が・ね!めがねっ子メガネ眼鏡眼鏡っ娘


[実行結果]

Hello Megane!


 うん、この言語については解らないなら解らないでいい。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る