ラムダの魔法使い ~ 純粋関数型プログラマーの異世界転生

七師

第1話

 藤沢奈都なつは空港のロビーで搭乗案内を待ちながらラップトップを開いていた。コンソールにGHCiを立ち上げて式を打ち込み、出力結果をコピペしながらスライドを作っていく。作業に没頭しすぎて出発時間が迫っていることにも気づかないほどだ。


 「JH231 フランクフルト行きの方は搭乗口208Bにお並びください」


 航空会社職員による搭乗案内のアナウンスが流れ、周囲に座っていた人々が一斉に席を立つ。周りが騒がしくなったことで、ようやく奈都も気が付いてきょろきょろを左右を見回してラップトップの作業を中断し、ウィンドウを閉じてシャットダウンした。


 毎年8月上旬のころにオンラインのプログラミングコンテストが行われる。数日間かけて1つの超難度の問題を解くという形式のコンテストで1人でもチームでも参加可能だ。優勝チームは代表者が9月頭に行われるイベントに招待されて、表彰後にプレゼンをする。


 奈都はそのコンテストに会社の仲間数人でチームを作って参加し優勝したため、オランダのアムステルダムで開催されるイベントに出席することになり、東京から飛行機に乗り込んだのだ。


 誰でも名前を聞いたことくらいはある有名な外資系IT企業で働く奈都は、年数回の海外出張のおかげでマイルがたまっていて座席をビジネスクラスにアップグレードしていた。エコノミークラスの座席は家畜小屋のように乗客が詰め込まれているが、ビジネスクラスになると体を横にすることができるだけのスペースが与えられる。快適さは雲泥の違いだ。


 食事もエコノミークラスに比べれば豪華になるが、そこはどこまでいっても機内食ということでご察しだ。美味しいと言ってもあくまで機内食としてはという但し書きがつく。そんな食事の後、奈都は梅酒をもらってちびちび飲みながら、ラップトップを開いてスライド作成の続きを始めた。


 それからどれくらいたったか。スライド作りが一通り終わった奈都はラップトップを片づけて席を倒してベッド状にして眠りについた。


 奈都が目覚めたのは大きな揺れで頭をどこかにぶつけた衝撃のためだった。寝るときにもきちんとシートベルトをしていたおかげでベッドから落ちることはなかったが、そうでなければシートから放り出されてもおかしくないほどの衝撃はあったと思われた。


 機内のアナウンスに従って座席をベッド状態から最初の座席状態に戻し、言われるがままに酸素マスクを顔につけた。キャビンアテンダントが慌ただしく歩きまわっているが、奈都には何が起きているのか詳しいことは全く分からない。ただ、よくないことが起こっていることだけは予想ができた。とりあえず命の次に大事なラップトップを抱きしめて無事に事が過ぎることだけを祈っていた。


 8月31日、JH231 フランクフルト行きはシベリア上空でその消息を絶った。



 ――体が重いですな。目もよく見えないし、何ですかな、これは?


 意識が回復した時、奈都は自分の状態がよく理解できなかった。思考力はあるようだが、5感がほとんどぼやけていて周囲の状況が全く把握できない。しかも、妙に眠くてすぐに意識を失ってしまう。


 意識が戻るときは何か体が不快な状況になっているときで、何とかしようと体を動かそうにもうまく動かせないし、誰かに話そうにも言葉もうまく話せないので、とにかく声を上げて誰かに気づいてもらうことを期待するしかなかった。


 声をあげてしばらくすると誰かが来るのか、お腹がすいていれば何かが口の中に入れられ、体がべとべとしていれば体を拭かれるようだ。そうして不快な状態が解消されると、ようやく落ち着いて考える時間を取ることができた。


 まず奈都が考えたのは、自分がどうしてこんな状況になったかだ。


 最後の記憶がビジネスシートの上で飛行機の墜落の衝撃に体が大きく揺さぶられるところだった。高高度からの急激な下降による気圧の変化に耳が痛くてめまいがしていたが、そんなことを気にしている心の余裕もなかったということを覚えている。


 墜落の瞬間、死を覚悟したがこうして生きているということは命だけは助かってどこかの病院に搬送されたということなのだろう。感覚も運動機能も曖昧ということはいわゆる植物状態になってしまったのだろうか。


 ――まぁ、まだ結論を出すには早すぎですな。それより眠いし、もっと寝るですな。寝る方が怪我の治りも早いですな。


 と、こんな調子で、いつも考えているうちに眠気が優ってきてしまうので、途中で思考を中断して眠りに落ちていくのだった。お腹が空いたら起きて眠くなったら寝るとは自堕落な生活だとは思うものの、体の欲求に逆らうだけの体力はないようだった。


 そんな生活がしばらく続くうち、少しずつ状況が変化してきた。


 まず、5感が少しずつはっきりしてきた。特に重力の向きはちゃんとわかるようになって自分がどういう姿勢をしているか分かってきた。視覚や聴覚も改善してきて、周囲の状況がおぼろげに把握できるようになった。


 ――ラップトップはなくなってしまったですかな。


 また、四肢を動かすこともできるようになった。うまく手足を動かすと重力の向きが反転するので仰向けからうつぶせになったのだということがわかる。視覚が弱くても、周りに手を伸ばせばものに触れて何があるのかを推測することも可能だ。


 そんな感じで自分の状況を把握するに、どうやら奈都は柔らかい布団に寝かされて檻の中に入れられているようだ。


 ――なんというか、檻ではなくてこれは……、ベビーベッドですかな?


 お腹がすくと体を持ちあげられて口元に甘い汁の出る何かを押し付けられたり、体がべとべと気持ち悪いと、足を持ちあげて体を拭かれたり、気づいてみると心当たりのあることがありすぎる。


 奈都はその考えに戸惑ったが、いろいろ試せば試すほど肯定する証拠が集まり、疑惑は確信に変わっていった。


 藤沢奈都は飛行機事故で一度死んで、再び赤ちゃんとして生まれ変わったのだ。前世の記憶を保ったまま。


 ――んー、どこか外国にで生まれ変わったですかな?


 聴覚が改善して周りの人の声が判別できるようになっても、話している内容はまるで理解できないところから、日本以外に生まれ変わったのだろうと推測した奈都。外資で働きながらいまいち英語が苦手だったので、これから新しい言語を覚えなければならないとなって心の中でため息をついた。


 ――はー、プログラミング言語が自然言語だったらよかったのにですな。


> You.say(func() {

>  if time.now().time_in_day() == "6:30" {

>   you().get_up()

>  }

> })


> I.say(func() {

>  return false

> })


 ――ですかな?


 などとバカなことを考えていられるのは、赤ちゃんの体が成長して覚醒していられる時間が少し伸びてきたからに他ならない。


 ――そうだったですな。生まれ変わったのなら大事なことがあったですな!


 プログラミング言語と自然言語に関する哲学的な考察を脇において、奈都は大切なことを思い出した。生前は何度このことで悔しい思いをしたことか。生まれ変わった今こそこの雪辱を晴らす好機だった。


 ――峰不二子に、私はなるですな!


 生前の凹凸のない体を捨てて、今度こそはぼんきゅっぼんのグラマラス体型に! そのためには赤ちゃんの時からの英才食育が重要なカギを握るっ。


 もちろん確かに遺伝子は重要だろう。でも、遺伝子は変更は利かない。ならば次は食べ物。いい乳を作るにはいい乳で作られたミルクを飲むことが大切なのだ(妄想)。


 どういうわけかこの家は乳母がいるらしく、母乳を与えられるときに味や肌触りが違うことがある。そこで、奈都は母乳を与えられるときにできるだけ巨乳のおっぱいから飲むように心がけ、貧乳のおっぱいの場合には全力で抵抗することにしたのだ。


 さらに奈都は年頃になってから死ぬまでの10数年間にわたって蓄積し結局報われることのなかった数々の前世の知識を、新しく赤ちゃんとなった自分の体に叩き込んでいくのだった。目指せ、峰不二子。


 と言っても、残念ながらまだ赤ちゃんの体ではできることもそれほど多くはない。そもそも手足もまともに動かせないのだ。その反面体の成長に伴って起きていられる時間は順調に増えてきて、おっぱいのことだけを考えて1日を過ごすことに限界も感じるようになってきた。なので、将来のおっぱいトレーニングのため、今は全人格的な成長を優先するべきとの結論に至った。


 まずやったらいいと思うことは言葉を覚えること。しかし、やはり音韻体系すら分からない状態ではできることも大したことはない。それに、結局のところ話す練習をしようと思っても、まだ口の周りの筋肉が弱くて思ったような発音ができないという根本的な問題立ち返って来てしまうのだった。


 ということで、そっち方面はそっちで地道に努力を重ねていくとしたところで、さらに余った時間をつぶす^B^B^B^B^B^B^B^B^B、新たなトレーニングの一環として、何となくプログラミングのことを考えるようになったのは不思議ではない。結局峰不二子から遠ざかっている気がするが気にしてはいけない。


 ――今日は、フィボナッチ数列でも数えるですな。


 フィボナッチ数列というのは、最初の2つの数字が0、1で始まって、それ以降の数字が前の2つの数字の和になるという数列のことだ。数学的にも興味深い性質のある数列だが、特にプログラミングの世界では初級の課題としてよく使われる定番ネタとして知られている。


 ――0,1,1,2,3,5


 暗算で計算するには直前の2つの数字だけを覚えておけばいいだけなので不可能ではないが、うっかり忘れてしまうと最初からやり直しなので、やってみると意外と難しい。


 ――8,13,21,34,55,89


 そして、途中から一気に数字が大きくなっていくので足し算自体もどんどん難しくなっていくのだ。


 ――144,233,377,610,987,1597


 ちなみに、フィボナッチ数列の一般項は、黄金比Φ=(1+√5)/2を使って、Floor((Φ^n/√5)+(1/2))として計算できるが、そっちの方をプログラミングのネタにすることはほとんどない。基本的にループ(くりかえし)の練習問題の題材としてのみ使われるネタなのだ。


 ――2584,4181,6765,10946,17711,28657、……変ですな。


 そんな調子でどんどんフィボナッチ数列の計算をしていったが、途中で奈都は妙な違和感を感じて計算を止めた。


 ――私、こんなに暗算得意でしたですかな? ちょっとやってみるですな。758398+236975=1005373! ……正解かどうか全く分からないですな。


 それからというもの、奈都は計算がすいすいできる不思議な感覚に暇があれば没頭していくようになった。といっても所詮は赤ちゃんの体力なので、計算しているうちに眠くなっていつの間にか寝てしまうことがほとんどなのだが。


 そんな風に月日は過ぎ、巨乳の乳母を選んでおっぱいを飲んでいるうちに離乳食も始まり、目も耳もはっきり見て聞こえるようになってきた。運動能力も発達してお座りができるようになり、ハイハイができるようになり、つかまり立ちができるようになり、一人歩きができるようになった。おっぱいトレーニングも順調だ。


 そしてある日、とうとう衝撃の事実を知ることになった。


 ――な、なんじゃこりゃあぁぁぁ!


 ちん○んがついてました。


 ――終わったですな。


 こうして奈都の峰不二子化計画はあえなく失敗に終わったのだった。


 考えてみれば転生したからと言ってもう一度女に生まれ変わるとは限らなかったわけで、考えてみれば当たり前のことなのだけれど精神的にはちょっとショックが大きくてその日はミルクが喉を通らないほどになってしまった。


 どうやら悪いタイミングで新しい人生で初めての風邪を引いてしまったようで、寒気はするわ頭がガンガンするわ意識が朦朧とするわで、弱った心に追い打ちをかけるような苦しみに心が折れそうになってしまった。


 ――ああ、生まれたばかりでもう死ぬんですかな……


 そのまま失意のうちに眠ってしまった奈都だったが、ふと気づくといつの間にかあの日の飛行機の中にいた。


 緊急事態を暗示するように明滅するライトの下、キャビンアテンダントが必死になって叫んでいた。


 「乗客の皆さまは急いで非常出口に向かってください。Please go to the emergency exit!」


 奈都もそこに向かおうとするがシートベルトがどうしても外れない。


 「他に乗客の方はいませんか。この飛行機はこれから墜落します。This plane is going to crash soon!!」

 「ま、待つです。まだここにいるですな」


 しかし、どういうわけかキャビンアテンダントには奈都の声が届かず、シートベルトはどんなに頑張っても外れない。それどころか外そうとすればするほど逆に絡みついてくるような気さえする。


 「Emergency! Emergency!」


 天井はいつから始まったのか緊急事態の警報がけたたましく鳴り響いていた。男性機長の声がスピーカーから漏れてきた。


 「We are crashing now! We are crashing...!!」

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

作者を応援しよう!

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

応援したユーザー

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

新規登録で充実の読書を

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

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

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