表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
魔力ゼロですが、魔法はぜんぶコードなので問題ありません 〜前世プログラマーの少女、キーボードで異世界をデバッグする〜  作者: せい | 健康優良不良プログラマ
第1部 ①魔法はコードだった

この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

PR
7/211

第7話 観察

あれから半月ほど経って、村で萌の月の祭事があった。


豊穣の祈り、というらしい。

萌の月の入りに祭司エルナが村の中央広場の小さな祭壇で、その年の豊作と村の安寧を祈願する魔法を行う。


毎年のことらしく、村人はみんなぞろぞろと広場に集まっていた。


わたしもエマとヨハン、ノラを抱えた父アルベルトと一緒に出かけた。


「リナ、今日はお祭りみたいなものなのよ」


エマがわたしの手を引きながら言う。


「お祭り、好き」


「あら、覚えてたの?」


「うん……たぶん」


前世での夏祭りの記憶。

夜店、花火、浴衣。

ぼんやりとまだ覚えていた。


ここではそれは無いだろう。

だけど村人みんなが集まる「儀式」というのは、わたしにとって別の意味で興味深かった。


(エルナが魔法を発動するのを近くで見られる)


その瞬間にわたしの「眼」が何を捉えるか。

試したい。


(——試したい試したい試したい)


頭の中の声が勝手に増殖していた。

両手がポケットの中で無意識にぎゅっと握りしめられていた。


——気をつけないとまた変な顔をしてしまう。


そう自分に言い聞かせた。


◇◇◇


広場の中央には低い石の祭壇があった。

その上に銀色の盆が置かれ、村の若い娘が麦の穂と春の花を丁寧に並べている。


祭壇の周りには四つの白い石が東西南北の方角に置かれていた。

あの石——たぶん魔石だ。普通の家の生活魔法で使うものよりずっと大きい。


(……前世の機械室に並ぶ装置みたい)


そう思った瞬間に自分で笑いそうになった。

冷静さを取り戻せと頭の中でエンジニアの自分を叱った。


祭司エルナが純白のローブの裾を翻しながら祭壇の前に立った。


胸の魔石のペンダントが朝の光をほんの少し反射していた。


「神々の御名のもと、萌の月の一日。わたしたちはここに集う」


エルナの声が広場に静かに響いた。

低くてよく通る声だった。


わたしはエマの手をぎゅっと握ったまま目を目一杯見開いた。


(始まる)


祭壇に集中する。

四つの白い石に集中する。

そしてエルナの指先に集中する。


エマがわたしの肩を後ろからそっと押さえた。

「リナ、そんなに身を乗り出さないの。祭事のときは、目を伏せているものよ」


「あ、う、うん」


——目を、伏せる。

神々の御業をじっと見つめるのは、行儀のよいことではないらしい。わたしのように凝視するのは、なおさら。


引っ込めた。

でもまた、いつの間にか前へ出ていた。


◇◇◇


エルナがゆっくりと両手を祭壇の前で組んだ。


そして長い詠唱を始めた。

わたしの頭の中では、それが関数呼び出しに見えた。


「——アヴェ・グランディア——ヴェルティス・テラ——ベネディクト・アグリス・エト・ホミネス——ソルム・カスタス——」


聞いたこともない、長い古代語のような響き。

普通の生活魔法はせいぜい一語か二語の短い詠唱だった。

それと比べるとこれは明らかにもっと複雑な何かを呼び出そうとしている。


(始まる——)


エルナの詠唱が続く。


そして——


(……あ)


四つの白い石がゆっくりと淡い金色に輝き始めた。


四つの石の上空にそれぞれ模様が浮かんだ。

台所の黒い石の時よりも、ずっと大きく複雑な模様。


——空中で四つの模様がゆらりと繋がっていく。

線で。光で。


(……これは——!)


わたしの息が止まった。


四つの模様は互いに接続線のような光で繋がっていた。

その繋がり方が——


(関数呼び出し)


頭の中で確信が湧いた。


——関数呼び出し。

前世の世界では、コードを書くときに何度も書く基本的な動作だった。

ある「ひとまとまりの処理」に名前をつけて別の場所からその名前を呼ぶ。すると、そのひとまとまりが走る。


それを何度も何度も組み合わせて複雑なプログラムを作っていく。


四つの中心模様は、それぞれ独立した「ひとまとまりの魔法」だ。

それぞれが東西南北の石と紐付いている。

そしてそれらが空中で互いにデータを渡し合っている。


エルナの詠唱はその全体のエントリーポイント——プログラムの入り口。

彼女の発する古代語のフレーズが一つずつ模様の中の関数を呼び出している。


(分かる、分かる、分かる!)


頭の中でものすごい速度で構造が組み上がっていく。


——どの言葉がどの模様を呼び出すのか。

——どの模様がどの石と紐付いているのか。

——四つの石の出力が、どこに集約されるのか。


(これはわたしが書いてきたコードの構造だ)


エルナの詠唱は続いている。


「——プロウィデンス・アド・ノス——」


その瞬間、四つの模様の中央に五つ目の模様が新しく浮かんだ。

今までで一番大きく複雑な模様。


(……これだ——!)


わたしの「眼」がその中央模様の構造を読んだ。


中心には何かの条件を判定する部分があった。

菱形の図形。前世のフローチャートで見たあれだ。

そこから二つの矢印が外へ伸びている。


——「もしこうであれば」と進む矢印と、

——「そうでなければ」と進む矢印。


(……分かった——!)


(わたしの知っている言葉で言うなら、これは if 文だ——!)


頭の中でその言葉が爆ぜた。


——if 文。

条件で枝分かれする。前世なら、これは if 文と呼ばれる形だった。


——それが目の前に魔法陣として存在していた。

わたしには、それがソースコードのように見えた。


しかも図形で視覚的に表現されていた。


頭の中で、形だけを追ってみる。ベシリアと同じ、括弧の癖。同じ系統だ。


```ヴェルティス

( ?

 (?)(?)(?)(?)

 ( ?

  (? → ?)

  (? → ?)))

```


四つの何かを呼び出して、中央で枝分かれしている。条件が何を見ているのかも、四つが何なのかも、`?` のまま。大きすぎて、半分も追えない。

——それでも、中央のこの形が「枝分かれ」だということだけは、確かだった。


(うわうわ、うわ、うわ)


息が荒くなった。

胸が跳ね上がった。

両足が地面から浮きそうになった。

気付くとエマの腕の中でわたしは目をものすごく見開いていた。


「リナ、リナ、ちょっと落ち着いて」


エマが慌ててわたしの顔を覗き込んだ。


「な、なんでもないお母さん、なんでも」


「あなた、目がギラギラしてる」


「気のせい、ぜったい気のせい」


——たぶん、気のせいではない。


(……次は気をつけないと。もっと巧く隠さないと)


◇◇◇


「——ベネディクト——」


エルナの最後の詠唱。


中央の大きな模様がぱっと光った。

そして四つの石が揺らぐような輝きを残しつつゆっくりと光を失っていった。


模様もゆっくりと空中から消えていった。


——豊穣の祈りが終わった。


村人たちが安堵したように声を上げた。

「今年もお疲れさまでした」「いい儀式だった」と口々に。


エルナは軽く頭を下げて村人たちの感謝に応えていた。


わたしは——

言葉を失っていた。


口の中で何かが繰り返し繰り返し転がっていた。


(if 文、関数呼び出し)

(あった、本当にあった)

(コードだ、絶対コードだった)


エマがわたしの顔をもう一度覗き込んだ。


「リナ、本当に大丈夫? お顔真っ赤よ」


「ぜんぜんふつう、お母さん、ふつう」


「ふつうって……」


エマが笑いを堪えていた。


——わたしも笑いを堪えていた。


(分かった——分かった——分かった——)


(これは、if 文だ——!)


エルナがふとこちらを見た気がした。

ローブの裾を翻してゆっくりと祭壇から下りるエルナの藍色の瞳が、群衆の中のわたしを見つけたような気がした。


——けれどそれは一瞬で、別の村人へと移っていった。


(——あの人にも気付かれかけた?)


わたしはエマの肩越しにその背中を見送った。


胸の中ではまだ、あの五つ目の模様の「条件分岐」が何度も何度も再生されていた。

そしてそのたびにわたしの内側で何かが爆ぜるような音を立てていた。


——これは本当にコードだった。

そしてそれなら、わたしにはまだできることが残っているはずだ。


■あとがき・解説


作付け前の豊穣祈願という、村人にとっては毎年の儀式。けれどリナにとっては、生まれて初めて見る「大規模なソースコード」でした。今回はその場面で出てきた言葉をご紹介します。


■この話で出てきた言葉


■「関数呼び出し」


プログラミングでは「ひとまとまりの処理」に名前をつけて、別の場所からその名前を呼ぶことで処理を実行できます。これを「関数呼び出し」と言います。たとえば「お湯を沸かす」という関数を作っておけば、お茶を入れたいときも、カップ麺を作りたいときも「お湯を沸かす」と呼ぶだけで済みます。第7話で祭司エルナが唱えた長い古代語の詠唱は、まさに関数呼び出しの連続でした。彼女が一つフレーズを口にするたび、対応する魔法陣(関数)が起動し、四つの石が連携して一つの大きな魔法を構築していたのです。本文中で詠唱に《かんすうこーる》とルビが振られていたのは、リナがそう認識していたからです。


■「フローチャート」


処理の流れを図にしたものです。長方形が処理、菱形が条件分岐を表すのが定番。リナが魔法陣の中に菱形を見つけて「if文だ」と確信したのは、前世でこの記法に馴染んでいたからでした。


リナの「眼」は、ただ模様を見るだけではなく、その構造を即座に解析してしまいます。これは前世の彼女が積み重ねた経験そのもの。死んで生まれ変わっても、技術者の魂は消えなかった――そんな話でもあります。


次の話もお楽しみに。


評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ