鍋の中

Miliファンの雑文置き場

9.8はどうして「転生の曲」なのか:私のMag Mell 解釈

Mag Mell とは何だったのか

youtu.be

Mag Mellが発売されて7年が経ちます。Miliの原点であるこのアルバムは、Miliの曲や世界観について考察をしようとしたら避けては通れません。このストーリーや世界観については多種多様な解釈があるでしょう。これはその一つで、私なりの解釈を書いたものです。

Mag Mellとは何だったのか?まずは公式の言及を見てみることにします。この当時のツイートはあまり多く残っていないですが、たとえばこんなものがあります。 f:id:shirasu_t:20210610234307p:plain 死者の国、楽園の国。 さらに公式アカウントからもこんなツイートが。

ここでも「死者の国」「楽園」という言葉が現れます。 はじめに結論を言うと、私はMag Mellとは文字通り「死者の国」なのだと思っています。Miliの宇宙では死んだ人はMag Mellに至るということです。 なぜこれが重要なのか、なぜこう考えられるのか、これらはNine Point Eightと関わってきます。9.8の歌詞はおおよそ、主人公が恋人の後を追って自殺するバッドエンドの曲だと思われているでしょう。しかしそれとは裏腹に、モモカさんは「9.8はバッドエンドではなく、転生の曲」だと繰り返し言及しています。 (例えば、以下のAsk.fmの質問やツイートなど)

f:id:shirasu_t:20210617012925p:plain

Q...あなたの書く歌詞は、なんでそんなにダークなんですか?9.8って、ビルから飛び降りる女の子の歌みたいじゃないですか。
A...彼女が自分なりの人生を歩み、自分の決断に従って行動しているという側面を見るなら、そうダークなものでもないでしょう? *1

「Mag Mell = 死者の国」の説をとると、9.8のもつこの不可解さが説明できます。こう考えてみましょう。9.8が自殺の歌で、それがバッドエンドに思えるのは、私たちが死後の世界を否定しているからです。しかし、Mili宇宙においてはMag Mellという死後の世界が存在しているのだとしたら? 主人公と恋人はMag Mellに至れたということになり、それは転生というハッピーエンドだと言えるのではないでしょうか?

Nine Point Eightという曲は2つの面を持っていることになります。この曲はそれ単体では自殺の歌です。しかしMag Mellという大きな文脈に接続されることで本当に転生の歌になるとしたら。

Nine Point Eight & A Turtle's Heart 読解

つぎに、A Turtle's Heartとの関連でNine Point Eight の歌詞を読んでみます。 まず、Nine Point Eightの歌詞から読み取れるストーリーを整理してみましょう。

I cried out
Please don't leave me behind, leave me behind
So you held me tight
And said I will be just fine, I will be just fine, I will be just fine

最初の部分は、主人公と恋人との離別について描かれているように思えます。このシーンは回想のようなものでしょうか。しかし決定的なのは次の部分で、「君の炎 your flames」と「 ashes」という表現から、どうやら火葬のことを描写しているようです。

Sparkling ashes drift along your flames
And softly merge into the sky

また、モモカさんは過去にAsk.fmで「9.8に出てくる花の意味は?」という質問に答えていて、それによるとはじめの一節の花は「"you"の快癒を祈って贈られたもの」で、次の一節に出てくる花は「葬式用の花束に使う一般的なもの」です。はじめの一節と次の節の間で恋人(you)が病死していることが示唆されています。

f:id:shirasu_t:20210617014221p:plain
ask.fmより

歌詞に戻りましょう。

Zipped my mouth
I just keep climbing up, keep climbing up
Justify our vows
I know you are right above, you are right above, you are right above

かくして主人公は、相手の後を追って自殺を試みるのですが、ここで現れる「誓いは必ず守ってあげる Justify our vows」というフレーズは意味深です。「誓い vow」 とは?この語はどうやら、結婚か修道院での誓いを指すようで(オックスフォード英英辞典にtypically to marriage or monastic careerとある)、おそらく結婚の誓いか、それに近いものをこの二人は結んでいて、主人公が後を追ったのはこの誓いによるものだという解釈ができます。あとで出てくるので、少し覚えておいてください。

一方で、A Turtle's Heartではどうでしょうか。

Turn around and I realized
That I have been left behind

Nine Point Eightの主人公は、置いていかないで(don't leave me behind)と頼みましたが、A turtle's heart の主人公は置いていかれた(left behind)ことに気づいてしまう。*2そして、自殺を図ったNine Point Eightの主人公とは異なり、この主人公は死ねないことに苦しんでいるようです。

Oh but darling darling darling you have to make sure
To stab me pierce me hurt me kill me thoroughly
You see
My heart won't die but I really tried

でもねダーリン、ダーリン、ダーリン、君はちゃんと、
僕を刺して、貫いて、痛めつけて、殺してくれないといけないんだ
わかるでしょう
僕の心臓は死なないんだよ、何度も試したんだ

*3私は、この二曲はただ対の表現が見られるだけではなくて、同じ世界設定上でのもしもの話なのだと思っています。つまり、もしNine Point Eightの主人公が自殺できなかったとしたら?そのもしもの話を描いたのがA Turtle's Heartなのではないか、そう私は思っています。

ところで、A Turtle's Heartの歌詞には「きっと、きっと、きっと、君は許してくれてるはずだから Maybe maybe maybe you've forgiven me」という一節があります。何を許すのでしょうか?先ほどの「誓い」のことを思い出してください。 A Turtle's Heart = Nine Point Eight の主人公にとって、自殺をしなかったことは「誓い」を破ることにはならないでしょうか。それを恋人が「許してくれてるはず」と言っていたとしたら。こう考えると、不明瞭だった2曲の各箇所はつながっているようにも思えます。

そして、この二曲の対比で、明らかにNine Point Eightはハッピーエンド、A Turtle's Heartはバッドエンドとして描かれているようです。なぜ自殺の歌の方がハッピーエンド足りうるのか、この疑問にも、「Mag Mell = 天国」説を取るとしたら納得がいきます。Nine Point Eight の主人公は天国に至ることができたと考えられるからです。

ところで、A Turtle's Heart/ Nine Point Eightには他にも関連が匂わせられている曲があって、それがHueに収録されているOpiumとDKの2曲です。今までのことをもとに、この2曲についても解釈をこころみてみます。

Opium

www.youtube.com

この曲が発表された当時、A Turtle's Heartの関連曲だと話題になりました。おそらく主な理由は、Youtube版のアートワークのお姉さんが、Mag Mell ブックレットの少女に似ていたためだったと思います。たしかに歌詞を見ると、この曲はA Turtle's Heartからさらに時間が経ったのちの物語だと読むことができそうです。そこから遡ってブックレットのイラストの花がポピーに見えることなども指摘されました。 しかしそれよりも気になるのは、背景にある、Mag Mellに出てきたこの星です。このクレーターのある星がもし(天国としての)Mag Mellそのものなのだとしたら、Opiumの主人公は、Mag Mellの星の外に居ます。それは主人公がMag Mellに至れなかったという意味にとれないでしょうか。これも私が「Mag Mell = 死者の国」だと思っている理由の一つです。

DK

Opiumは歌詞の面ではわかりやすく関連が示されている箇所は少ないですが、DKは9,8/亀の両曲を連想させるようなフレーズが多くあります。

I'm standing at the edge of reality
Will you miss me
If I take a leap
現実の限界点に立ち止まる
もし私が飛び降りたら
君は寂しくなるかな

ここはNine Point Eight の「I'm on the top of your world」「And take a leap to hell」のフレーズを意識しているように思えます。しかし、DKの主人公は9.8の主人公とは異なり、飛び降りることをただ想像するにとどまっている。DKの主人公は飛べなかったようで、殻(Shell)の中に閉じこもってしまいます。*4 先にA Turtle's HeartはNine Point Eightの「もしもの話」じゃないかと言いました。そこからすると、DKはNine Point EightのストーリーからA Turtle's Heartのストーリーに移行するその境目を描いているように思えます。

I'm rotting inside my shell
I'm left behind
Left to decay
殻の中の私は腐ってゆく
取り残されて
腐敗する

そしてこの箇所では、また9.8/ 亀に共通する Left behindという言葉が出てきます。それではRottingとは?私は、この部分はNine Point Eightの最後の部分、

Delicate flesh decomposes off my rotten bones
肉の塊は腐った骨から剥がれ落ち

との対比だと思っています。腐った骨から離れて自由になる(Nine Point Eight)か、取り残されて腐敗を待つ(A Turtle's Heart, DK)か。もしMag Mellが死者の国の物語だとしたら、Nine Point Eight, A Turtle's Heart, DK, Opium, 今まで取り上げたこの四曲はどれも生と死をめぐる曲です。そしてこの対比において、腐敗すること(to rot, to decay)は生の側のモチーフとして使われているように思えます。Rosettaにも次のような一節があります。*5

Rosetta
For everyone everywhere everything
will betray your innocent heart
All of them
All of them
Soon will be rotten

ロゼッタ
どんな場所も 誰もが 何もかもが君の無邪気なココロを裏切るだろう
何もかも 全てが いつか腐って行く

さて、これまでの4曲の解釈をまとめます。まずA Turtle's Heart は、Nine Point Eightで恋人を失った主人公が、しかし自殺できなかったら、というもしもの物語だと言いました。そしてOpiumは、A Turtle's Heart の世界線で、さらに時間が経った後の物語です。DKはA Turtle's Heartに至る一歩前、Nine Point EightとA Turtle's Heartを接続する部分のストーリーを補完している、この4曲にはこういったストーリーがあると私は思っています。

f:id:shirasu_t:20210617004325j:plain
雑な概念図フローチャート

Mag Mell の他の曲について:Rosetta

ここまではNine Point Eight と周辺の曲を見てきました。それでは、Mag Mellに収録されている他の曲は?私は他の曲にも、Mag Mell = 天国に通じるようなストーリーを読みとることができるはずだと思っています。成立を考えると、Mag Mellはその時点での既発表曲に未発表曲数曲(Imagined Flight, A Turtle's Heart, Rosetta...)を加えてできあがっています。なので個々のストーリーはばらばらですが、それでもMag Mell = 天国というところでつながっている、そう思えてなりません。Miliの宇宙には多種多様な世界、Miracle Milk にあったような星たちがあり、現代日本に似た世界(Nine Point Eight)があったり、ファンタジーな理想郷(Utopiosphere)があったりする。そしてそのいずれで死んだ人も等しくMag Mellに至る。こうしてばらばらに見えるストーリーがMag Mellという大きな文脈に接続される、Mag Mellにはそういう機能があると思います。

youtu.be

他の曲のなかでも、Rosettaは今言ったような方向での読み方がしやすい曲です。というのも、歌詞に次のような一節があるからです。

Find a future
Find a land of dreams
Find a heaven
Find a home that won't leave you
未来を探す
夢の国を探す
天国を探す
道を迷っても 帰りを待つ家を探す

AOさんがTumblrに上げているRosettaのアートワークにはキャプションがついていて、それによればRosettaは「天国を探していた女の子」です。*6 歌詞からはRosettaが本当に「夢の国」「天国」にたどり着いたのかは定かではありませんが、この「夢の国」「天国」そして「帰りを待つ家」はMag Mellのことだ、という読み方ができます。したがって、Rosettaも、Nine Point Eight の主人公たちとは別のしかたで、Mag Mellを探し求めた女の子の話だという解釈ができあがります。他の曲(Imagined Flight, Utopiosphere...)も同じように読めるかもしれません。

おわりに

この記事では、Nine Point Eightを中心にその周辺の曲、Mag Mellについての私の解釈を話しました。それでもこれはごく一部で、またMag Mellには不可解な部分が沢山残っています。(Imagined FlightのMVはどういう意味なのかブックレット1ページ目のスニーカーを履いた人物は誰なのかerrerとは何なのか、etc)Mag Mell自体はMiliの中では昔の作品ですが、まだ語れることは山ほどあるはずです。この記事を読んだ人が、ブログ記事など何かの形で自分の解釈を書いてくれると嬉しいです。Mag Mellの、ひいてはMiliの談義がより盛り上がることを祈って。以上、ここまで長い記事を読んでくださってありがとうございました。

*1:move on one's life は少し訳しづらいので、この訳は参考までに受け取ってください

*2:この語がキーワードになっているのは、おそらくDeemoの副題、Never left without saying goodbye (さよならも言わずに、消えてしまわないで)からでしょうか

*3:A Turtle's Heart には公式の和訳がないので、以降は拙訳を使います

*4:Shellは殻とも甲羅とも訳すことができます。A Turtle's Heartには公式訳がなく、非公式の訳では多くの場合甲羅と訳されていますが、殻と同じShellです

*5:ちなみに、Rosetta, DK, 9.8 の他に 腐る rot という言葉が出てくるのは、Extension of You (I know that bodies rot) などがあります。身体は有限で、いずれどうしようもなく腐ってしまう、そういう観念論がここに読み取れます。ところで、Miracle Milk に再録された Utopiosphereには 「プラトン主義 Platonism」という副題が新しく付けられていますが、プラトンはまさに肉体の作用よりも魂の作用を信じた観念論の始祖といえる哲学者です。煩雑なので今回は省きましたが、ここにはUtopiosphereとのつながりも見えると思っています。

*6:https://suidoukannoharetu.tumblr.com/post/70180625390/rosetta-mili

Javaの歌詞からSustain++; を読む

目次

はじめに

www.youtube.com

Sustain++; のフル版がついに公開されました!Mili曲でJavaのプログラムで書かれた歌詞をもつ曲は、2ndアルバムの「world.execute(me);」、ミニアルバムの「world.search(you);」に続き、これで3曲目です。プログラムの歌詞をもつ曲はどれも小ネタが仕込まれてて(wsy の歌詞にコンピュータアルゴリズムの名前が隠れていたりとか)面白いのですが、今回も例に漏れずすごいです。この曲ははっきりストーリーがある曲という印象を受けましたが、普通の歌詞を補完するように詳細が書かれていたり、向こうでは描かれていなかった結末が描かれていたりして読み応えがあります。

この記事では、英語と日本語の歌詞に加え、プログラムで書かれた歌詞も参照しながら、全体のストーリーについて自分の解釈を書いていきます。(CDの歌詞カードがあれば手元に用意して読んでほしいです)


コード読解①(ending verのところまで)

       /**
        * CALL ME MOMMY
        * JUST LIKE YOUR FANTASY
        * There is no crime in ideality
        */
       if (you.getFetishes().searchByType("name calling", "mommy") != -1){
           you.addToMemory(me);
           you.setNicknameFor(you.getMemory(me),"mommy");
       }
       Rule r = new Rule("Oedipus complex is okay",true);
       world.addRule(r);

最初の方の部分です。気になるのは最後の2行、字面でわかるかもしれませんが、"Oedipus complex is Okey" というルールを世界に追加する、と読めます。
さっそく脱線するのですが、エディプス・コンプレックス(Oedipus complex)とは、シグムンド・フロイトという昔の精神病学者が提唱した精神医学の言葉です。フロイトは精神の発育に性欲を重要視する考えをもっていて、「すべての男児は母親を求める性的欲望を持っていて、その欲望は気づかないうちに抑圧されている」と主張しました。ここで指してるエディプス・コンプレックスはこのことだと思います。「お母様とお呼びなさい」のお母様には、欲望の対象、という含意があるのかもしれません。

次の部分。

       /**
        * MUX>>>DEMUX
        * Can't you understand me?
        * I'm not mine NAND I'm not yours
        * Ah
        */
       try{
          you.decodeMessage(me.codeMessage("I'm not mine NAND I'm not yours.","mux"),"mux");
       } catch (InsufficientIntelligenceQuiotientException e){
           world.sendMessage("Oh you dummy.",you);
           me.announce("Ah")
       }

英語歌詞よりプログラムの歌詞のほうを読むとわかりやすいです。ここでは、「I'm not mine NAND I'm not yours」というメッセージをmeがコードして、それをyouがデコードする、という指示と、それが失敗したときの指示が書かれています。

コードする、というのは、たとえば「あいうえお」を「1110001110000001100…」と2進数にするように、コンピュータの言葉にする(符号化といいます)という意味です。デコードは逆に、符号化されたものを平文に直すことで、ここでmeとyouはメッセージを暗号にしてやり取りをしている、とわかります。

実は歌詞の「MUX」「DEMUX」も同じような意味です。MUXとDEMUX(それぞれマルチプレクサ、デマルチプレクサといいます)は論理回路の部品で、何をするかというとざっくり「受け取った信号を変換する」ものです。MUXで変換された信号はDEMUXで元に戻ります。>>>という記号があるので、MUXとDEMUXをつなげた、という意味でしょう。こうすると、一度変換したものを再び戻す、ということになります。メッセージを変換して発信し、受け取り側で再変換して受信する、ということは、この「codeとdecode」「MUX>>>DEMUX」はどちらも、コミュニケーションを意味しているのではないでしょうか。
ちなみに、コミュニケーションという言葉はsustain発表時のモモカさんのコメントにも出てきています。
www.barks.jp


つぎに、"I'm not mine NAND I'm not yours"って言葉を考えてみます。NANDはやっぱりコンピュータ関連の言葉で、NOT-ANDの略です。論理学的には、「P NAND Q」が正しい、ということは「P AND Q は正しくない」という意味になります。なので、歌詞の意味は「I'm not mine」と「I'm not yours」は両立しえない、私はつねに誰かに属していて、誰のものでもないということはありえない、そんなところだと思います。

もう一つプログラムの歌詞からわかるのは、この部分で、me は you にこのメッセージを正しく伝えられなかったらしい、ということです。というのも、プログラムには「このメッセージを受信して例外が出たとき、meは"Ah"とアナウンスをする」みたいなことが書いてあるからです。歌詞に「Ah」とあるのは、満足にコミュニケーションが取れなかったme の嘆き、ととれます。

このあたりまでが、以前公開されたending verに含まれていたところですね。この先の次の部分も読んでみると、ぼんやりしていたストーリーの輪郭が浮き出てくる感じがします。この曲の主題とストーリーについては、公開前のインタビューでモモカさんがすこしだけ言及していることがありました。

Sustainability(持続可能性)という単語は最近では環境に対しても使う言葉なんですが、個人的には恋愛などの人間関係にも該当すると思います。
「攻殻機動隊」最新作ED曲は、音楽制作集団Miliが担当 | BARKS

で、これを踏まえて以降の部分を読んでみます。

コード読解②(~最後)

言葉を死なせないで 愛を枯らさないで
これから私達に殺される近い未来の川のように

あぁ
馬鹿みたいなことをブツブツ言いながら
例えば
「こうなるって分かってたんだ」とか
その予兆を知らんぷりして

この部分です。プログラムでは次の部分に該当します。

for (int sustain = 0; sustain < world.getRiver().size(); sustain++ {
me.sayTo("I love you.", you);
you.sayTo("I love you.", me);
}

String[] tags = {"stupid", "dumb", "Pretty", "ignorant"};
world.mute(me,tags);
world.mute(you,tags); 
for (life them : world.getLifeTopOnePercemt()) {
me.fight(them);
you.fight(them);
}

コメントアウトされた歌詞は省略)

このプログラムの前半部、「言葉を死なせないで~近い未来の川のように」にあたるところで書いてある指令は「sustainの値が十分高くなるまで、me と you がお互いに "I love you" と言い合う」というものです。「言葉を死なせないで」というのは、充分なコミュニケーションをとらないと、関係の持続可能性が下がってしまう、という意味に取れます。

もっと言うと、「充分なコミュニケーションがとれない」というのは、さっき挙げた部分、歌詞の「MUX>>DEMUX~Ah」の部分で、主人公がyouとコミュニケーションを取ることを失敗した、ということを踏まえている気がします……というところで、この曲がどういうストーリーなのかがはっきりしてきます。まず、主人公のI と You はたぶん恋愛関係にあります。主人公はyouとコミュニケーションを取ろうとするけど、うまくいかない、だんだん関係に亀裂が入ってくる、でも二人は「その予兆を知らんぷりして」いる……という描写だと自分は解釈しました。

で、この「予兆」がなにかもプログラムの歌詞に書いてあります。この中に書かれてる、「"stupid", "dumb", "Pretty", "ignorant"」という言葉です。stupid, dumb, ignorant、いずれも人を罵る言葉なので、会話の中にだんだん悪口が増えてくることが「予兆」なんだと思います。(Prettyはよく分からない…)

ちょっと飛ばして、サビ前のこの部分を見てみます。

私達は捜している
本能に従って
存在しない品種の幽霊(ゴースト)を検索中
生まれた日から私達を完全体にしてくれる品種
追いかけ続ける
私達は完璧な存在に憧れる
完璧な両親という存在もしない品種
成長したのは体だけ 心はいつも小さいまま


ここで突然「両親」って言葉が出てくるのは、たぶん最初の方にあったエディプス・コンプレックスの話と関係しています。フロイト男児の成長を「欲望の対象である母に代えて、やがて母と同価値を持つ性的対象を見出す」と説明しています。つまり、私たちが他人に向ける各種の欲望は、実は自分の生まれ育った家族に根ざしている、ということをフロイトは言っています。ここから敷衍して、「もっと良い相手を」と求めることは、実は理想の家族、理想の両親を追い求めていることなんだ、という前提がこの歌詞にあるのかな、と思いました。

ということで、次の「Where do we go from here?」と続く部分、この「here」とは、完璧な人間という「存在しない品種の幽霊」を自分たちは追いかけているんだ!と、この主人公たちが気づいてしまった地点なのだと僕は解釈しました。

もうちょっと進んで、ラスサビの始まるあたりを読みます。このへんからプログラムの歌詞がより面白くなってきます。

         /**
          * MUX>>>DEMUX
          * Can't you understand me?
          * You turn my screen #0000ff
          */
         you.disorient(me);

ここはラスサビの直前ですが、歌詞に対してコードは1行だけです。「youはmeを迷わせる(disorient)」と書かれていて、ブルースクリーンはこの比喩だとわかります。

          /**
           * Hear me out
           * It's a perfect plan
           */
          me.command(you, "listen");
          me.sayTo("Anything inconvenient, I shall erase for you", you);

プログラムの方に「Perfect plan」の内容が「Anything inconvenient, I shall erase for you」だと書いてあります。「何もかも不便なんだ!君のために消し去ってしまおう」といったところでしょうか。この「計画」の通り、主人公は「何もかもを消し去る」ために動き出します。

          /**
           * It's all just sunk cost, I know
           * But I'm not ready to stop
           */
          me.manipulate(you, "beg");
          me.manipulate(you, "gaslight");
          me.manipulate(you, "blame");
          me.manipulate(you, "tears");
          world.getRelationship(me, you).end();
          you.setMemory(me, null);

me.maniplate…とあるように、ここで主人公はyouを操って行動させようとします。youがmeに懇願するように(beg)、狂ってしまうように(gaslight)、自分を責めるように(blame)、泣き出すように(tears)。ややあって、主人公はこの二人の関係を終わらせ、youのもつ主人公についての記憶を"null"に、つまりなかったことにします。

続いて、最後の部分です。

          /**
           * I don't want to stop
           */
          me.getMemory(you, "positive");
          me.getMemory(you, "date");
          me.getMemory(you, "fun");
          me.getMemory(you, "travel");
          me.getMemory(you, "pregnancy");
          me.getMemory(you, "kids");
          me.getMemory(you, "snuggle");
          me.getMemory(you, "netflix&chill");
          me.getMemory(you, "gaming");
          me.getMemory(you, "birthday");
          me.getMemory(you, "cooking");
          me.getMemory(you, "exercising");
          me.getMemory(you, "studying");
          me.getMemory(you, "gardening");
          me.getMemory(you, "chores");
          me.getMemory(you, "shopping");
          me.getMemory(you, "driving");
          me.getMemory(you, "daily");
          me.getMemory(you, "sad");
          me.getMemory(you, "angry");
          me.getMemory(you, "fight");
          me.getMemory(you, "forgiveness");
          me.getMemory(you, "makeup");
          me.getMemory(you);
          world.setRelationship(me, you, null);
        

getMemory() というのは、記憶を引き出す、という指令でしょう。「やめたくない(I don't want to stop)」と言った主人公は、自分の中からyouに関する記憶という記憶を探し出そうとします。(pregnancy, kids, って記述まであるんですけど、主人公たち子供いたんですね)そして最後に、二人の関係をnullにして終わります。

プログラムだとこの後は、コメントアウトされた

//sustain++;

という記述が続きます。(コメントアウトは「//」と行頭に書くことで、一度書いた箇所を一時的に除外する、という意味です)

Sustain++; とは何か

最後に、表題でもあるこの文字列の意味について。

プログラムの中での使われ方を見るに、sustainは「関係の持続可能度合い」のようなものを表しているようです。sustain が高い関係は持続可能、つまり長く続くポテンシャルを持っていて、逆にsustain が低い関係は破綻して仲違いしてしまいかねない、ということです。さらに、プログラミングで、なにかのあとに++と書くのは、「その値を1増やす」という意味を持ちます。すると、sustain++; という指示は、「私たちの関係の持続可能性よ、増えろ」という意味に取れます。

ちなみに、リスアニというサイトで発表されたインタビューで、モモカさんはこのタイトルをこんな風に説明しています。

――このタイトルについている記号(++;)はインクリメントと言って、プログラミング用語で「変数の値に1を加える」処理を指す単語らしいですね。タイトルにはどのような意味を込めたのですか?


Cassie これは簡単に言うと「サステインを一つ増やす」ということで、持続可能性がワンユニット上がるという感じですね。単純に数字が高くなる。プログラミングコードも一つの言語なので、英語の歌詞に和訳がつくように、プログラム言語で書くことによって翻訳がひとつ増えるっていう。で、やっぱり言語によって文化が違うので、同じものを少し違う目線で見られるようになるんです。このタイトルもプログラミングを知っている人が見ると、また違う解釈の仕方があると思うので、そこが面白いかなと。
『攻殻機動隊 SAC_2045』コンセプトシングル「Intrauterine Education」&Wタイアップシングル「雨と体液と匂い / Static」を同時リリース!Miliインタビュー – リスアニ!WEB – アニメ・アニメ音楽のポータルサイト

まとめ

さて、自分の解釈でストーリーを整理するとこんな感じです。この曲の主人公、I と Youは恋人同士にありましたが、その関係には軋轢が生じています。満足にコミュニケーションがとれず、結果として「持続可能性」が下がってしまう。関係の破綻した二人は、”自分たちは相手に、完璧な人間という「存在しない品種の幽霊」を求めていたのだ”と気づいてしまい、どうしようもなく混乱します。主人公(me)は、全部なかったことにしよう、と決意します。「一緒に落ちて行けば、涙もない、後悔もない」のだから。主人公は二人の関係を一度終わらせ、相手に自分のことを忘れさせます。そうした後で、主人公は一度、自分のなかに残る相手の記憶をかき集めようと足掻きますが、最後には関係をnull(=無)で上書きして、今度こそすべてを終わらせます。その後には、コメントアウトされた大量の「sustain++;」という指令が遺されている……。

もちろんこれは自分の解釈に過ぎませんが、なんとも救いのない印象を受けます。さて、ここまで駄文を読んでくださってありがとうございます。書いてて表示されるカウンターがそろそろ8000字に届きそうで、ここまでたどり着いた人がいるのか本気で不安ですが…。歌詞の記述でも、意味を測りきれずに飛ばした箇所がいくつもあり、誰かが考察や解釈を書いてくれるのを望むばかりです。

補遺

この記事を書く時、Miliが発表したコメントやインタビューを片っ端から読んだんですが、どこにも一覧にまとめられてなかったのでここに書き並べておきます。
見つけただけで6個はありました。めちゃくちゃ注目されててすごい

  • Miliが語る、移住のススメ。「世界各国に1000人ずつファンがいる」(cinra.net)

www.cinra.net

  • 攻殻機動隊 SAC_2045』コンセプトシングル「Intrauterine Education」&Wタイアップシングル「雨と体液と匂い / Static」を同時リリース!Miliインタビュー(リスアニ!web)

www.lisani.jp

  • 【Mili インタビュー】Miliは好きなことをやりたい人が集まっている(OK music)

okmusic.jp

  • Miliインタビュー 新作「攻殻機動隊 SAC_2045」コンセプトシングルに込められた思いとは? 「持続可能性」から「LGBTQ」まで、世界基準の音楽世界を聞く(アキバ総研)

akiba-souken.com

  • 攻殻機動隊」最新作ED曲は、音楽制作集団Miliが担当(BARKS)

www.barks.jp

  • リリースに寄せて Miliからのコメント(Flying dog)

https://www.jvcmusic.co.jp/flyingdog/-/News/A026694/3.html

world.search(you);に現れるソートについて

01/07追記:ソートの説明~1段落目の読解までを大幅に加筆しました

 

こんにちは、文章力がないせいで記事の下書きだけがたまっていっている白洲です。

この記事ではworld.search(you); (以下wsy) の歌詞にはこんなモチーフがある、といったことについてオタクが好き勝手に語ろうと話していこうと思います。多少理系っぽい横文字が出てくるのですが、できる限り平易に書くよう努めます。

 

さて、すこし前提知識を説明します。ちょっと唐突ですが、「ランダムに並べられた数字を整列する」という問題を考えてみます。[2, 3, 8, 1, 6]という並びがあるときに、[1,2,3,6,8]となるように並び替えたいです。もちろん人間は数えればすぐにできますが、これをコンピュータが解くためには、プログラムのように定式化した手続きを用意する必要があります。これをアルゴリズムといい、整列のためのアルゴリズムをソート(sort)と言います。

ソートはアルゴリズムの基本的なもので、今までにさまざまな方法が考案されています。

(このへんは主眼じゃないので雑な説明に留めますが、説明が下手でよくわからんという方は下記のリンクなどを参照ください)

www.ics.kagoshima-u.ac.jp

qiita.com

 

なぜ突然情報学の問題の話をしたかと言うと、もちろんこのソートがworld.search(you); に関わるためです。周知の通り、wsyは世界の中でyouを探す存在についての物語です。では、実際にプログラムの上でどのようにyouを探そうとしているか。wsyの主人公がyouを探すために用いている方法論がソートです。

歌詞カードのプログラムの1行目には、「public class worldSorterSearcher」と記述があります。

雑な説明をすると、このworldSorterSearcherというのがプログラムに付けられた名前です。世界をソートして(Youを)探すためのプログラム、といったところでしょうか。

 

つぎに、sortと「you」を探すことにどのような関係があるのか説明します。例示も兼ねてさっそく歌詞のはじめの部分を読んでいきましょう:

Side by side, the lovelier goes up

Reach for the top, till the bubble pops

結論から言うと、この部分のモチーフは、ソートアルゴリズムの一つであるバブルソート(bubble sort)です。

バブルソートそのものについては以下のリンクに詳しいです:

http://www.ics.kagoshima-u.ac.jp/~fuchida/edu/algorithm/sort-algorithm/bubble-sort.html

 

この部分に該当するコードでもバブルソートが書かれています。HueかMillennium Motherの歌詞カードをお持ちなら、3行目に「bubbleSortByLoveliness」という記述があるのを見てみてください。

バブルソートでやっていることは、世界のあらゆるものを「Loveliness」、すなわち「可愛さ」でもって並び替えるという操作です。では、これでなぜyouを探せるか?それはおそらく、主人公にとって、世界の中でもっとも可愛い(Loveliest)存在がyouであるからです。

youが様々なものに姿を変えていて、どれがyouか分からなくても、すべての物を可愛さの順で並べることで、最も可愛いyouを探し当てることができる。このいささか強引にも思える方法で、主人公はyouを探そうとします。これが、ソートでyouを探すことができる理由です。

 

そして、バブルソートを踏まえると、この2行の歌詞は以下のように解釈できます。無数にある諸物のなかから二つを取り出し「横に並べて、可愛い方を取り出す」という操作を続けることで、Top = 最も可愛いものを探し求めている、というふうに。

余談ですが、「泡が弾けるまで」というのは、水中の泡が浮力で上に向かっていき、水面(=トップ)に至ると弾ける、という様子のことで、バブルソートの名前の由来です。

 

次の部分についても見ていきます。

Pick a memory, insert the past

which one is sweetest? Save it for the last

この部分は、同じくソートアルゴリズムの一つ、挿入ソート(Insertion sort)がモチーフです。挿入というのは、たとえばトランプで、手に持っているカードを並べる動きを想像するとわかりやすいです。一枚ずつ札を取って、適切な位置に差し込む(Insert)。この動きを繰り返すとカードが順に並びますが、これと同じような原理で動くのが挿入ソートです。

さまざまな記憶があり、それぞれに甘さ(sweetiness)が決まっていると考えてみます。これらをトランプのように挿入して並び替えると、手札の最後(the last)には最も甘い(Sweetest)ものが残ります。歌詞はこうした操作をたとえていると考えられます。

ここから大きく飛んで、ラスサビ前のこの部分をみてみます。

Each one of us is a bucket of love

Some of us empty, some of us filled up

例によってここもモチーフはソートアルゴリズムで、バケツソート(Bucket sort)と呼ばれるものです。バケツソートの説明は以下のリンク先にあります:

http://www.ics.kagoshima-u.ac.jp/~fuchida/edu/algorithm/sort-algorithm/bucket-sort.html

コードの方を見てみると、ここでソートしているのは「愛しさ(Lovability)」という値です。(Millennium Mother 歌詞カード2枚目の1列目が丸ごとバケツソートのプログラムです)さまざまな物の「愛しさ」を比べ、最も愛しい物を取り出すためにバケツソートの要領で最も愛しいもの(=You)を探そうとする。その過程で、バケツのいくつかは空で、またバケツのいくつかは満ちています。

 

次で最後です。 

Cut us into pieces, break us down to the cell

Merge us back up, we have evolved now

 この部分はマージソート(Merge sort)と呼ばれるソートアルゴリズムが元です。例のごとく以下のサイトがわかりやすいです。

http://www.ics.kagoshima-u.ac.jp/~fuchida/edu/algorithm/sort-algorithm/merge-sort.html

マージソートでは、まず与えられた数字の並びを細かく区切り、並べ替えをしてから結合(merge)して元に戻します。イメージがつきにくいと思いますが、この操作をすると先述した挿入ソートやバブルソートより一段階速いソートができたりします。(蛇足)

そのために「細胞までみじん切りにして…結合して また進化する」と歌われています。また、この部分で先の「Loveliness」「Sweetiness」「Lovability」に該当する値は「Exp」とコードに書かれています。ちょっと不明瞭ですが、進化するので経験値のexpでしょうか。すると、歌詞の部分は進化するために経験値を求めている、というふうに読めます。

 

ひとまず以上です。wsyは書きたいことが多すぎて何度か挫折しているんですが、焦点を絞ったら思ったよりさくさく書けました。まだ内容が薄いのでしだいに加筆するつもりです。

【world.execute(me);】「不正な引数」って何?という話

ブログ1本目。world.execute(me); について書こうと思います。なんとなくwemを聴いていて、そういえばillegal augumentってソースコードだとどう書いてあるんだっけ、なんか変な引数を渡してたりするのかな…と思ったので、そこらへんの記述を読んでみたいと思います。プログラミングの話には自信がないのでお気持ちで書きます

さて、歌詞の「You have made some ILLEGAL AUGUMENTS…」にあたるソースコードはこの部分です。

try{
me.setOpinion(me.getOpinionIndex("you are here"), false); 
} 
catch(IllegalArgumentException e){ 
world.announce("God is always true."); 
}

ソースコード貼り付けとかできるんだ…って驚いてる)
 これはtry-catch文と呼ばれるもので、例外処理を行います。誤解を恐れずざっくり言うと、 try{ 以下の行に書いてあることを実行し、うまく行かなかった時に catch( ~ ){ 以下の行に書かれたことを実行します。歌詞では「君が渡してしまったね 不正な引数を」と歌われていますが、具体的に何が不正で、その結果どうなったのか、ということは分かりません。その二つがソースコードには(一応)書かれています。

ひとまずcatch以下の起こったことについて読んでみます。こちらはシンプルで、God is always true. というアナウンスをします。なかなか意味深ですが、踏み入った考察は主眼じゃないので置いておきます。ちなみに、world.announceという関数は、後の「いち、に、さん、し…」という部分でも使われています。

つぎに、"君"が何をしようとして不正な引数を渡してしまったのか、ということです。ソースコードのこの部分です。

me.setOpinion(me.getOpinionIndex("you are here"), false);

そのまま読むと、「meのもつOpinionのうち、"You are here" というものの存在(正誤?)をfalseに書き換える」といった感じでしょうか。

おそらく、"You"が「Youはここにいる」と"me"が思わないようにmeを書き換えようとした。しかし失敗した…と解釈できると思います。プログラムを書いている存在がGodだとしたら、GodがYouにそうさせた(失敗することまで織り込み済みで?)のでしょうか。このへんは曖昧なところです。

また、何が「不正な引数」だったのかもはっきりとは分かりません。"you are here"というOpinionがmeの中にそもそも存在しなかったか、それを書き換えることができなかったか…でしょうか。

めちゃくちゃ余談ですが、「君がここにいない」という言葉はなんとなくworld.search(you);みがありますね。ここで見つけられなくなったイフがwsyだったりしたらアツいですよね(はかどる妄想)
 
さて、なんとも中身のない記事ですが、一旦この辺りで終わりにします。読んでくださってありがとうございました。

ブログを始めました

はじめまして、白洲(Twitter:@shirasu_t)です。なんとなくブログを始めました。

実は数ヶ月前に作ったのに出不精なので今まで何も書いてなかったという体たらく。だいたいMiliについて書くつもりです。考察とかまとまった文章を置く用にします。

三日坊主にしないためにひとまず短いトピックでぽつぽつ書いていこうと思います。