第二十話 Lisperの少女
「じゃ後始末はあたしがしておくからー」
「お疲れです、先輩、西原さん」
「また明日ね、イツキくん」
俺は部室を出ると、帰路についた。
途中、駅前の繁華街のゲーセンで少し時間を潰したので、帰りは遅くなってしまった。
すでに月が見える時刻だ。
「やれやれ。こりゃ、母さんから小言の一つは覚悟しないとな……」
呟きながら、公園の中を横切る最短ルートを取る事にした。
夜の公園は、人気が無く侘しいものだ。
暗闇の中、一人で歩き続けていると、無性に心細くなるものがある。
おいおい。京塚イツキ。もうガキじゃあるまいし、幽霊でも出るんじゃと──
そこに、俺は黒いワンピースを着た少女が芝生に座っているのを見つけて、ぎょっとした。
「おわっ」
それは、どこか常世離れた光景だったからだ。
その少女は月明かりに照らされた銀髪。
神秘的なムードを漂わせていたからだ。
「……?」
少女が俺の方を見た。
「あっ……いや、驚かせてすまなかったな」
俺は一応、謝罪をする。
すると少女は視線を下へ戻した。
そこで初めて、俺は少女がノートPCを前の芝生の上に置いていたのに気づいた。
俺は無性に好奇心にかられて、少女の後へとまわると、モニターを眺めた。
少女はもう俺など気にしないとばかりに、無表情でキーボードを打ちつづけている。
モニターには、プログラムのコードが書かれていた。
(defun range (number maxnum)
(if (<= number maxnum)
(cons number (range (1+ number) maxnum))))
(defun filter (number lst)
(if lst
(if (zerop (mod (car lst) number))
(filter number (cdr lst))
(cons (car lst) (filter number (cdr lst))))))
(defun eratosthenes (lst)
(if lst
(cons (car lst) (eratosthenes (filter (car lst) (cdr lst))))))
「な、なんだ……これは……」
間違いなく、それはCのコードじゃない。まったく未知なコードだ。
カッコが多いな……。
少女は視線を俺に向けると、ぼそりと呟いた。
「エラトステネスの篩」
「えっ…」
「素数を見つけるアルゴリズムコード……お兄ちゃん、高校生でしょ? ……知らないの?」
そこで初めて、俺は少女が中学生くらいであるのに気づいた。
「あっ、えーと……数学はちと苦手でな」
「ふうん……。えっとね、こうして、実行するの」
少女はさらにキーボードを打った。
> (eratosthenes (range 2 10)) [ENTER]
(2 3 5 7)
コマンドプロンプトに似たコンソールは、数字の列を吐き出す。
もっとも俺には何の事やら、さっぱりだが。
「ところで、このコード、何の言語なんだ? 見たことないんだが」
少女はきょとんとした表情を浮かべると、ふぅ、とため息をついて、仕方ないなー、というふうに答えた。
「Lisp」
「リスプ? 知らないな、そんな言語」
「そう……結構、Hackerの間じゃ有名なの……」
「そうかー。じゃ、君は凄いんだな」
よくわからんけど、凄そうだ。
「私、サヤ。御堂サヤ。……君じゃなくて」
少女、御堂サヤは少し怒ったよう……なのかは無表情なのでよくわからないが、俺は推測した。
「サヤちゃんか。すまんすまん。俺は京塚イツキ。緑ヶ丘高校の一年だ。これでもCならバリバリなんだぜ」
前回の西原さんの失敗を踏まえて、俺は少し謙虚に言った……つもりだ。
「そう」
だが、あまり関心が無さそうにサヤちゃんは答えた。
「そうか。でも、もう夜も近いから、早めに家に帰った方がいいぜ。近頃、ここらには変な奴が多いからな」
「t」
サヤちゃんは、ぽつりと謎の言葉を呟くとノートPCを閉じた。
うむむむ……どうやら同意ってことらしい。
「俺、こっちが帰り道だから」俺は家の方角を指差した。
「同じ」
「……そ、そうか。えっとー、一緒に途中まで帰るか?」
「t」
俺たち二人は、無言で帰り道を歩いていった。
俺はこの謎の少女とどうやら知り合ったようだ。
御堂サヤ。
Lisp使いの少女。