はじめに

こんにちは!このページは「コンピュータサイエンスと魔法のYコンビネータ」という記事の2ページ目です。1ページ目から読むにはこちらからどうぞ

コンピュータサイエンスと
魔法のYコンビネータ

初級その1: 計算箱

スライド 1 / 12

この話はフィクションです

本稿はゆるい物語調で話を進めていきます。ちなみに、この話はフィクションです。

まずは、この物語に登場する「計算箱」の話をしましょう。

これが計算箱のアイコンです!

他のページをお探しですか?

はじめに·
·初級その2
スライド 2 / 12

ラムダ村の計算箱

むかしむかし、「ラムダ村」という小さな山奥の村があり、村人が仲良く暮らしていました。

ラムダ村の村人たち

ラムダ村には、代々伝わる「計算箱」という道具がありました。計算箱は、その名の通り算数の計算をしてくれる魔法の道具です。現代の電卓のようなものだと思ってください。

計算ができる魔法の道具「計算箱

この計算箱がどんなものか、説明しましょう!

ちなみに: 「ラムダ村」は、上から読んでも下から読んでも「ラムダ村」です。 なぜ「ラムダ」と名付けたかは最後に説明します!

スライド 3 / 12

計算箱の例

こちらをご覧ください。これが、ラムダ村の村人が使っていた「計算箱」のひとつです。

計算箱
  • 上には、数字の が入っています。
  • 下には、1を足す印 が入っています。

では次に、この計算箱はどのように使うかを説明しましょう!

スライド 4 / 12

実行 ボタン

それぞれの計算箱には実行 ボタンがついており、それを押すと計算が実行されます。試しに、下の計算箱で実行 を押してみてください:

結果は になりました。つまり、 が計算できたということです。


他の計算箱も見てみましょう!たとえばこちらをご覧になり、実行 を押してみてください:

こちらは になり、すなわち が計算できました!

スライド 5 / 12

1を足す機能

ここまでをまとめると、下の計算箱のように、

  • 上に何らかの数字 が入っていて、
  • 下に が入っている場合、
  • 実行 すると結果は になる

ということです。

これが、計算箱に備わっている機能のひとつ、「1を足す機能 」です。この機能を使えば、何らかの数字に を足す計算を行うことができるのです。

計算箱の1を足す機能:
何らかの数字に を足す
スライド 6 / 12

1を引く機能

計算箱は「1を足す」だけではなく、「1を引く」計算をすることもできます。こちらの計算箱を実行 してみてください:

結果は になりました。すなわち が計算できたということです!


このように、何らかの数字 の下に が入っていると、 を計算することができるのです。

を計算できる

これが、計算箱に備わっているふたつめの機能、「1を引く機能 」です。この機能を使えば、何らかの数字から を引く計算を行うことができるのです。

計算箱の1を引く機能:
何らかの数字から を引く
スライド 7 / 12

使えるのは だけ

ここが重要なポイントなのですが、計算に使うことができるのは だけです

しか使えない

それでは質問です。 しか使えないのであれば、たとえば といった計算はどのように行えばいいのでしょうか?

これを計算したいときはどうすればいい?
スライド 8 / 12

を2回使う

正解を教えましょう。 を計算したい場合、 を2回使えばいいのです。

を2回使う

こちらに を2回使った計算箱を用意したので、実際に試してみましょう。実行 を押してみてください:

結果は になり、すなわち が計算できました!

スライド 9 / 12

も何回でも使える

ちなみに、 も、どちらも何回でも使うことができます

も何回でも使える

たとえば、下の計算箱は、 を3回使うことで、 を計算してくれます。

を計算

一方、下の計算箱は、 を4回使うことで、 を計算してくれます。

を計算
スライド 10 / 12

どんな大きな数字の足し算でも引き算でも可能

つまり、 を何度も使うことで、どんな大きな数字の足し算でも引き算でも可能なのです

も何度も使えば、
どんな大きな数字でも足し算・引き算できる

たとえば、 を計算したかったら、どうすればいいでしょうか?

答えを言うと、 の下に を10回配置した計算箱を実行すればいいのです。

を10回配置

このようにすれば、計算箱はどんな大きな数字の足し算でも引き算でもできます

スライド 11 / 12

ラムダ村の村人は計算がとても苦手

まとめると、計算箱は足し算や引き算を行ってくれる魔法の道具というわけです。

計算箱は足し算や引き算ができる

そして、ラムダ村の村人は計算がとても苦手でした。 だから、たとえば「 」のような単純な足し算をするのにも、村人たちは計算箱に頼りきっていました。

俺ら計算が苦手だから、 といった
単純な足し算も、計算箱がないとできない!

ちなみに: 残念ながら、計算箱は「掛け算 」や「割り算 」を行うことはできませんでした。

掛け算や割り算は、計算箱ではできない

しかし、計算が大の苦手だった村人たちにとって、足し算や引き算ができるだけでも大いにありがたいことでした。

スライド 12 / 12

3つめの計算箱の機能

実は計算箱には、今回紹介した「1を足す機能 」や「1を引く機能 」以外にも、さらにもうひとつの機能があります。

3つめの機能がある

次のページでは、計算箱の3つめの機能について紹介していきます!

次のページへ進む初級その2
初級は残り4ページです!

ひと休みする前に

お願い:長いのでひと休みしよう」とお考えの方にお願いがあります。

差し支えなければ、このページを閉じる前に下のツイートをリツイートしてくださると、宣伝になるので非常に助かります。もしくは、「初級その1までは読み終えた」と引用リツイートしてくださると、さらに励みになります。図々しいお願いで恐縮です。

また、本稿の内容について質問がございましたら、上のツイートにスクリーンショット付きで返信してくだされば最優先で対応します。メール(shu@chibicode.com)でもお答えできますが、返事が遅れる可能性が高いです。

次のページへ進む初級その2
初級は残り4ページです!

著者: 上杉周作 (ブログはこちら)
公開日:
ソースコード: GitHubで公開中

はじめに
プライバシーポリシー · 当サイトについて· Twemoji