# 「それ」について学ぶ

ひまわり独特の概念「それ」

> ひまわりは、他のプログラム言語を、日本人にとってプログラムが身近になるように、日本語へローカライズしたものです。よって、多くの文法が、BASIC, C言語, Perl, Pascal 等を、模倣したものです。

> しかし、この「それ」という概念は、他の言語にはない、ひまわり独自の機能です。「それ」をうまく利用して、日本語らしいプログラミングに挑戦しましょう！（*Perlをご存知の方は、$_に近いものです。）

「それ」の生まれた経緯

> 以前、私は、日本で中国語を学んでいました。（李先生と言ういかにもって名前の）中国人の語学教師が、怪しげな日本語（失礼！）でもって、中国語を教えてくれました。（ワタシ、ニホン、スキアルヨ。アナタ、キレイネ。シャチョサン、ヤスイヨ・・・って感じ。）

> その先生が、日本に来て、生徒の話す日本語（周りでは高校生のコギャル達がへらへらと話しているの）を聞いていて、ふと、日本語に関する重要な感想を、もらしました。

> 「日本語って、（主語）や言葉の（語尾）の省略が、多いですね。」

> （あ、実際は・・・ニホンゴ、ショリャク、タクサン、アルネ。コトバ、ハジメルノトキ、ソレカラ、コトバ、オワルノトキ、ナドナド。・・・って感じね。）

> そうなんですよね。日常会話の日本語って、主語は省略されて、

> 目的語｛補語｝＋動詞　の形

> が、基本だと思うんです。

> 上から下まで、皆言わずとも、その言葉の雰囲気や、前後の会話から、類推して、例えば・・・

> 「昨日海行ったんだ。暑かったよな。どう？明日行かない？」

> って。この文章、一度も主語がないけど、私は、昨日海へ行って泳いで来たんだけど、昨日は暑かったよね。明日、君も、僕達と一緒に、海に行かないか？と、誘っているというのが、明確に相手に伝わります。

> この経緯があって、ひまわりでは、「それ」という特殊変数を導入しました。

> 「それ」が、主語の代わりになって、例えば、

> 「c:\text.txt」へ、書く。

> と、書けば、変数それの内容を、「c:\text.txt」という名前のファイルへ、書き込むという意味になります。

ひまわりにおける「それ」とは？

> 1. ひまわりの「それ」は、一見しただけでは、普通の変数と、何ら変わりありません。
>    ｛例｝それ＝（２０＋４）×３＋４。それを、表示。
>    .
> 2. ひまわりが用意している命令の多くは、「それ」に、答えを返します。
>    ｛例：四捨五入｝3.14を,1位で,四捨五入。それを、表示。
>    .
> 3. 引数を省略して、命令を使うと、省略された値に、それが補完されます。
>    ｛例｝「１２３４５」から、3文字、左端を切り取る。表示。’それの内容「１２３」が表示される
>    .
> 4. 計算式において、「それ」を、命令実行の結果として計算します。
>    ｛例：四捨五入｝変数Ａ＝四捨五入(3.14を、1位で)。変数Ａを、表示。
>    .
> 5. 計算式の中で、ラベルを呼ぶと、ラベルを実行し、「それ」を、ラベルの値として処理します。
>    ｛例：計算式の中で、ラベル呼び出し｝
>    結婚式の参加者数＝新郎の客＋新婦の客。｛ラベルを呼び出し｝
>    結婚式の参加者数を、言う。
>    終わり。
>    ＊新郎の客
>    それ＝２０｛人｝。戻る。
>    ＊新婦の客
>    それ＝１８｛人｝。戻る。

それを使った特殊な例

> また、「それ」の特徴として、面白いのは、変数へ値を代入するときに、

> > 現在時刻＝今。
> > 現在時刻と、言う。

> のように、式がかけるところです。

> 実際、「今」という命令は、"それ"に、現在時刻を返すように設計されているのですが、（上の例だと）現在時刻へ代入の時、それに、答えが返っていると、「それ」の値が、代入されるのです。

> > 今。
> > 現在時刻＝それ。
> > 現在時刻を、言う。

> これも、先ほどと、同じ意味のプログラムなのです。今。呼び出されると、「それ」に、現在時刻が入ります。そして、それを、メッセージボックスに表示するというものです。

戻る