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

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

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

エラーが発生しました。

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

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

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

PR
20/211

第20話 金属加工

工房通いの二日目と三日目も、わたしはグスタフの工房に通った。


二日目は父が付き添った。三日目の朝から、ヨハンが途中まで送ることになった。

村の外れの一本道までは兄が一緒。

そこから鍛冶屋までの最後の数分だけ、わたしが一人で歩く。

帰りも同じ場所まで兄が迎えに来る——それが、父と母が出した約束だった。


(……お父さん、お母さん、ちゃんと考えてくれてる)


わたしは胸の中でぼそりと呟いた。

朝、ヨハンの背中を追って一本道を歩く。

道の分かれ目で兄が立ち止まり、「行ってこい」と顎で鍛冶屋の方を示した。


そこから先、わたしは一人で歩いた。

八歳の足で、ほんの数分の距離。

途中で何度かよろけた。

それでもわたしはたどり着いた。


「来たな」


火床の前ですでに作業を始めていたグスタフが、振り返らずに声をかけた。


「親方さん、おはようございます」


「うむ」


それだけだった。

グスタフは多くを語らない。

だけどその「うむ」だけで、わたしは「歓迎されている」と分かった。


◇◇◇


その日の作業は、鉄の棒から鋸の刃を打ち出すというものだった。


「鋸ですか?」


「ああ。隣村から修理の注文が来た」


グスタフは火床から赤く焼けた鉄の塊を引き出して、金床に置いた。


「リナ嬢ちゃん、まず見ろ。鉄ってのは温度で性質が変わるんだ」


「うん」


「真っ赤に焼くと軟らかくなる。叩けば形が変わる。だが冷ますと固くなる。何度か加熱と冷却を繰り返すうちに、鉄が鋼に変わっていく」


(——状態が変わる)


頭の中でわたしは、先日、村の畑で見たソリディス(土固化)を思い出した。

あれも土の状態を「液体寄り」から「固体寄り」へ変える、状態遷移の魔法だった。


(——鍛冶も同じだ。温度と打撃という入力で金属の状態を変えていく)


(——でもこれは魔法じゃない。道具と人の手だけで行われる状態遷移)


頭の中でわたしはふと気付いた。


(——魔法と鍛冶は同じ「状態遷移」をしている。ただエネルギー源が違うだけだ)


(——魔法は魔力、鍛冶は火と人の力)


——胸の奥がざわついた。


これは、もしかして、


(——「魔力なき者」のわたしでも、道具と火と自分の手で状態遷移は起こせる)


その閃きはたぶん、わたしが今までで一番大きな手応えとして胸に響いた。


「嬢ちゃん、何ぼうっとしてる」


グスタフが振り返らずに声をかけた。


「あ、ご、ごめんなさい、親方さん」


「お前さん、ぼうっとしてるときの方が頭が回ってるな」


——え。


「親方さん、わかるの?」


「ふん。長年人を見てきたんでな。職人の卵の目つきはすぐ分かる」


——わたしを、職人の卵、と呼んでくれた。


(……うれしい)


胸の奥がまた温かくなった。


◇◇◇


グスタフは火から引き出した鉄を金床に置いて、


ガンガン、ガンと規則的に叩き始めた。


「叩く強さは、まず最初の三回は強く」


ガン、ガン、ガン。


「その次の三回は中くらい」


ガン、ガン、ガン。


「最後の三回は弱く」


カン、カン、カン。


「これを繰り返すんだ。嬢ちゃん、見えてるか」


「うん。三、三、三、で、九回」


「そうだ。なぜこうするか、わかるか」


——わかる気がした。


頭の中でわたしは考えた。


最初に強く叩くのはたぶん、内部の歪みを大きく動かすため。

中くらいは、その動きを整えるため。

最後の弱く叩くのは、表面を仕上げるため。


(——アルゴリズムだ。強→中→弱の三段階で、内部から外側へ徐々に整えていく)


(——前世のソートでも似たパターンがあった。粗い分割から細かい仕上げへ)


頭の中でわたしは、まとまった答えを口に出した。


「……強く叩くと、内部が動く。中で整える。弱く叩くと、表面が整う」


「ほう」


グスタフが初めて手を止めた。


「リナ嬢ちゃん。お前さん本当に八歳か」


——また、その質問だ。


「えへ、たぶん」


「お前の『たぶん』は信用ならんな」


グスタフが声を上げて笑った。


「だが正解だ。粗→中→仕上げ。これは長年の職人が経験で積み上げた、規則だ」


——「規則」。


わたしの胸の中で、その言葉がもう一度深く響いた。


(——鍛冶の知識は職人が何百年もかけて最適化してきた規則の集合)


(——前世のソフトウェア工学のベストプラクティスと同じだ)


——胸の奥がぐっとなった。


「お前さん、もう一つ覚えておけ」


グスタフがふっとわたしを見た。


「『同じ動きを何度も繰り返すうちに、職人の手は自然と最適な動きを覚える』」


「うん」


「だがな、頭で『規則』を理解してから手に覚え込ませる方がずっと早い」


——その言葉は明らかにわたし向けだった。


(……親方さんは、わたしのことを何か特別な子だと思ってる)


(——でもそれを表に出さないで、職人の言葉で教えてくれてる)


胸の奥でまたざわついた。


——わたしには、彼の優しさがちゃんと伝わっていた。


◇◇◇


その日わたしは、グスタフが鉄の棒を鋸の刃に仕上げるまでをずっと見ていた。


加熱冷却、加熱、冷却。

叩く、叩く、叩く。

ヤスリで形を整える。

最後に刃の部分を、特別な液体に漬ける(焼き入れ、というらしい)。


ジュと白い湯気が立ち昇った。


「これで刃が硬くなる」


「焼き入れ、ってやつ?」


「お前さん、知ってるのか」


「うん。たぶん。夢で見たかも」


「……またそれか」


グスタフがまた笑った。


工房を出るとき、わたしは深く頭を下げた。


「親方さん、今日もありがとうございました」


「おう。明日も来い」


「うん」


帰り道、わたしの頭の中ではいくつもの新しいことがぐるぐる回っていた。


(——鍛冶の規則、状態遷移、魔法と道具の共通点)


(——「魔力なき者」のわたしにも、できることがある)


——道は増えていく。


そしてそれぞれの道はたぶん、いつか繋がる。


(——わたしが、繋げる)


そう、心の中で誓った。


夕陽が村の屋根を、橙色に染めていた。


■あとがき・解説


グスタフの工房に通い始めたリナ。鉄の棒が鋸の刃に変わっていく一連の工程を見ながら、リナの中である閃きが芽生えます。「魔力なき者のわたしにも、できることがある」。今回はその閃きの根っこにある、プログラミング世界の考え方をご紹介します。


■この話で出てきた言葉


■「状態機械ステートマシン


第17話の後書きでも触れた「状態が変わることで動作が決まる仕組み」のことです。プログラミングの世界では「ステートマシン」「有限状態機械」などとも呼ばれます。


身近な例で言うと、信号機(青→黄→赤→青)や洗濯機(給水→洗い→すすぎ→脱水)。いまどの状態にいるかで、次に何をするかが決まる仕組みです。


鍛冶もまさに状態機械でした。鉄の状態は、


1. 冷えた状態(固くて叩いても形が変わらない)

2. 赤熱した状態(軟らかくて叩けば形が変わる)

3. 冷却済みの状態(叩いた形のまま固くなる)


加熱で状態が遷移し、打撃で形が変わり、冷却でまた別の状態へ。この三つをぐるぐる回しながら、鉄を少しずつ「鋼」に変えていく。プログラミングで書く状態遷移と、まったく同じ構造です。


■「アルゴリズム」


「ある仕事をやり遂げるための手順」のことを、プログラミングでは「アルゴリズム」と呼びます。レシピも組み立て説明書も、広い意味ではアルゴリズムの一種です。


グスタフが教えてくれた「強く三回、中くらいに三回、弱く三回」という叩き方も立派なアルゴリズムでした。粗く動かす→整える→仕上げるという三段階。前世のソフトウェア工学にも「粗い実装→改良→最適化」という同じパターンが存在します。


リナが「ソートでも似たパターンがあった」と思い出したのもこのためです。何百年も前の鍛冶職人がたどり着いた「規則」と、コンピュータの並べ替え技法が本質的に同じ形をしている――この符合こそ、リナの胸を熱くさせたものでした。


■「魔力なき者の道」


ここでリナが行き着いた閃きは、この物語にとってとても大きな意味を持ちます。


魔法も鍛冶も、本質は同じ「状態を変える作業」。ただエネルギー源が違うだけ。だとすれば、魔力を持たないリナでも、火と道具と自分の手があれば、状態遷移という現象そのものは起こせる。「魔力なき者」だったリナが、初めて見つけた自分なりの足場でした。


「お前さん、ぼうっとしてるときの方が頭が回ってるな」


職人を長くやってきたグスタフには、リナの目の奥が見えています。彼は「職人の卵」と呼んでくれました。


道は増えていく。そしてそれぞれの道はいつか繋がる――そう胸の中で誓ったリナの背中を、夕陽が橙色に染めていました。


次の話もお楽しみに。


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

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

↑ページトップへ