すぐに固まるパソコンを使う。

すぐに固まるパソコンを使って色々します(実はそんなすぐでもない)。基本的にプログラミング系が多いです。たまに違うことします。

Immediately Freeze!

何故かアルゴリズム 6 宣言or定義? 「EachLanguage_Program_3」

プログラムでは、”あるもの”を示すときに、「宣言」をします。また、それが何か表すときに「定義」をします。宣言定義の意味はこうなっています。



宣言

個人や団体が,その意見や方針を外部に対して広く表明すること。また,その言葉。

(by 大辞林)

定義

ある言葉の正確な意味や用法について、

人々の間で共通認識を抱くために行われる作業

(by Wikipedia)

となっています。

宣言で、”個人や団体”をプログラムとすると、

『プログラムで、その意見や方針(つまり処理内容)を外部に対して広く表明すること』

”外部”とありますが、これはプログラム自体です。ただ、その中で処理する際に、”これは何だ?”とならないようにするために宣言するのです。

つまり、ある処理をする際に、プログラム内で、存在を表すために宣言をするのです。

また、定義で、”人々”をプログラムとし、”言葉”をプログラムが持つ処理だとすると、

『ある処理の正確な意味や用法(つまり処理内容)について、プログラムのあいだで共通認識を抱くために行われる作業』

ですね。

つまり、ある処理をする際に、プログラム内で区別をつけるために定義をするのです。


宣言定義をする際に、必要な要素があります。(各言語で有り無しがあるので、必要度順で)

  • 名前...区別するための名前。宣言や定義には絶対必要。数でもいい(と思う)
  • 内容 ...物の実質(実体)を表す。定義するときは絶対必要。
  • 修飾子...区別するときに必要。色々な種類がある。
  • 宣言(定義)位置 ...それぞれがどの範囲で有効かを決める。

などです。

とりあえず言っても分かりづらいので、宣言と、定義プログラム例を出します。

中では、「Xという数を宣言して、その数が20(Int,数値)であることを定義して」います。

BASIC

10 X
20 LET X = 20

C

public int X;
X = 20;

C#

int X;
X = 20;

Go

var X int = 20

Java

int X;
X = 20;

Perl

int $X;
$X = 20;

Prolog

X = 20.

Python

X
X = 20

Ruby

X
X = 20

VB.NET

X As Integer
X = 20
解説

違ったら教えて下さい。

とりあえず、Prolog以外は、"X"という数を置いて、それに20をつけている感じですね。ちなみに、言語ごとで文の区切りが違います。

CやJavaは";"を最後につけることで一文が終わったことにしており、その他は改行をすれば文の終わりを認識します。

また、Prologは変わった形をしています。(よくわからないのですが)Prologは「論理型」のプログラミング言語だそうで、他のやつとは違っています。(詳しくは、論理プログラミング - Wikipedia
で)。

そのPrologでは、nanikaという()に挟んで宣言定義をしています。Prolog宣言をするには、「事実」という形にしなくてはいけません(なので、Prologは「宣言的」と言われます)。それがこの形で、"."で終わることで事実であると表しています。(ここでは、nanikaという事実の中で、Xというのが20であることを宣言しています)

また、Perlでは宣言をするときに、"$"という記号を使います。これを名前の前に置くことで宣言(&定義)できます。

次は、その宣言した"物"についてと、「修飾子」を解説します。