1. トップ
  2. コラム一覧
  3. プログラマーから見たあやふやな世界

プログラマーから見たあやふやな世界

投稿日 : 2018.10.25  |  カテゴリー : 雑記

プログラマーが悩む
プログラマーの夫とその妻という設定でこんなジョークがあります。

A wife asks her husband, a programmer, “Could you please go shopping for me and buy one carton of milk, and if they have eggs, get6?”

A short time later the husband comes back with 6cartons of milk and his wife asks “Why did you buy 6 cartons of milk?”

He replies “They had eggs.”

英語原文


 

妻がプログラマーの夫におつかいを頼んだ。
「牛乳買ってきてくれない?あともし卵があったら6個。よろしくねー。」

しばらくして夫が買い物から帰ってきた。
牛乳を6つも抱えて。

妻は聞いた。
「なんで牛乳を6つも買ってきちゃったの!?」

夫「だって、卵があったから。」

意訳

もしかするとプログラミングを経験した事が無い人はこの話のミソが分からないかもしれませんね。
普通であれば「牛乳を1つと、卵があれば”卵を”6つ」買ってくるのが自然な行動と言えます。
実にたわいもないありふれた日常会話です。

ではなぜプログラム経験者であればクスっときてしまうのか。

プログラミングには
if 〜〜 else 〜〜 という書き方があります。
日本語でも全く同じで「もしであれば〜〜もしそうでなければ〜〜」です。

このジョークをプログラム風に書いてみると。。。

初期値↓;
牛乳の数 = 1;
卵の数 = 0;

もし(店に置いている卵の数が(1以上だったら)) {
   牛乳の数 = 6;
   卵の数 = 0;
} その他にもし(店に置いている卵の数が 0だったら ) {
   牛乳の数 = 1
   卵の数 = 0;
}

買い物をする((牛乳の数)と(卵の数)だけ);

と、こんな感じになるでしょうか。

店に卵が1個でもあったから牛乳を6つ買ってきた!
プログラムとしては非常に素直かつ当然の挙動です。

プログラムは行間が読めません。
所謂KYですが、書いてある事が全てなのです。

ちなみにこの書き方だと卵の数は変動しませんので、
夫はいずれにしても卵を買う事はなかったのでしょうね。

この記事を共有する
  • facebookでシェアする
  • ツイッターでつぶやく
  • LINEで送る
関連記事

機械だって言語を持っているのだ!

私達が普段話している日本語。 小さい頃から親やその他の人が喋っているのを聞いて 小学校でひらがなやカタカナ更には漢字も含めて、書いたり発音したり学習してきた結果 私達はスムーズに母国語である日本語を何不自由なく理解し、使用していま ...

「ポケモン」の次は「ハリー・ポッター」!

ポケモンGOのNiantic社が、11月8日公式ブログで、「Harry Potter : Wizards Unite (邦題未定)」を開発中であることを発表しました。 映画や小説などでおなじみの「ハリー・ポッター」を題材にしたゲームで ...

意外と知らない「正月」のあれこれ

あけましておめでとうございます。 さて早速ではございますが「正月」のあれこれについて記述したいと思います。 「正月」の由来 まず、正月の語源は、様々な説があります。 仏教の修正会が1月にあったため「正すための月」であ ...

訪日旅行者が日本に来る前に「知っておく事」

1、居酒屋では注文した以上の請求がある 海外ではお酒が高いが、日本ではお酒が安く、居酒屋が多いことから、 外国人は日本にきたら色々な居酒屋で料理や雰囲気を楽しみたいと考えている旅行者は結構います。 ただそこで訪日旅行者をよ ...

ロボットは人間の友達となり得るのか

IT技術が進んでいくにつれて、ネット世界の拡大やネットワーク技術の普遍化、 VR(バーチャルリアリティ)といった分野がめまぐるしく進歩していってますね。 それでも空を走る車や宇宙への旅、どこでもドアなんてのはまだまだ空想の世界で ...

意外!あんな現象やこんな現象にも正式名称がある!

お昼ご飯を食べた後にウトウト。我慢して我慢して、けれどやっぱりだめで遂にスヤスヤ。 とても気持ちよいですよね。 安眠もつかの間、階段から落ちる夢を見て体が「ビクッ!」となるあの現象、実は正式名称があるのです。 知らなくても全く ...

レトロフューチャーと、想像とは違う現実

illust via Retro-Futurismus レトロフューチャーという言葉があります。 retro(懐古)でありfuture(未来)でもある不思議な組み合わせの言葉。 1900年代初期、科学技術がますます発展する中「 ...

iPadをなんとかして活用したいんや!

タブレット端末をお持ちですか? みなさん上手に使えてますか? 筆者はもともとApple製品が好きということもあり、多分に漏れず iPadを購入してみたわけですが、いかんせん使いどころが分からない。。。 iMac、MacB ...

SNSとの向き合い方

近年、IT化がより進む中、我々が幼少期の頃と比べ、現代の子供たちは小さい頃からネットに触れ情報を気軽に収集でき発信できるようになった。 それは羨ましいかぎりではあるが、そこには色々な落とし穴がある。 我々大人はSNSとの向き合い ...

目に見えてしまうからしょうがない無駄なモノ

「無駄な経験なんてない」 という意見はその通りで、今まで経験したことが連鎖のように以外なところで役にたったりするものです。 とは言えやはり役に立たなかった事はあるかもしれないけれど、それはそれで人間は忘れてしまう生き物なので「役に立 ...

Knocknote Education(ノックノートエドゥケーション)