![[screenshot_sekai_no_hate.webp]] > 『ぶたのみなさんへ』 > > 『ここが、地球の果てです。ここから先なんてものが、たとえあったとしても、それは架空のバーチャルの、想像上の出来事であり、アニメの世界なのです。どんなに魅力的でも、さわると、壊れちゃう、そういう世界があるのです。 > ぶたのみなさんは、三途の川という場所を 知っているでしょうか? そこは常世と現世の境目。世の中には、おいそれとは渡っていけない、またいではいけない境界というものも、あるのです。 > > (中略) >  つまりさ、ここから先へ行ったって、良いことなんて、なんにもないわけ。おみくじを引いたって、全部、大凶の大凶なわけ。草だって、一本も生えてないわけ。麻雀をしても、糞みたいな配牌しか来ないわけ。僕は、ずっと、向こうまで、旅をしてきたから、わかるんです。   先日、強烈な頭痛に苛まれ、しばらく寝込んでいた。 夏の暑い盛り、八月の太陽の直射日光を浴びせられたりなんかしたときに、「あっちー」と絶対に声に出さずにはいられない奴と、黙ってる奴、人間をこの二種類に明確に分けるとすると僕は黙ってる方に属するのだが、今回の頭痛は「いってー」と、声に出して試しに言ってみたほどだった。「いよいよ死ぬか」「死ぬかも」「いや逆におまえらが死ね」「脳みそがこねられている」みたいなことしか一時は考えられないほどひどかったのだけど、一晩寝たら痛みはあっけなく引いてしまった。「死ぬかも」というのは全く逆で、生きているから身体がなにかに反応あるいは抵抗しているのであり、まったく痛くなかったらもうそいつは死んでいる最中なんだろうと思った。 さいきん世の中の時間の進むスピードが自分に合ってないなと思う。五感は何かに反応し続けていてるのだが、その何かひとつひとつを感じたり考えたりする前に、次の新しいものがもう目の前にある。(月並な感想) 最新の音楽って、すごい良いなーと思うんだけど、時間の進むスピードがとんでもなく速い世界で生まれたものだと感じる。少年の頃の自分が突然こんなものを聴いたら、頭痛どころか血を吐いて死ぬんじゃないか。 何かに対して意見を持ったり、運動神経を持ったり、自由に遊んだりできるようになるまでに、その対象に触れる長い時間をそれなりに要する。江戸時代でいえば、刀だの槍だのをめちゃ練習していたのに、織田信長が鉄砲隊を組織したらあっけなく、今までの練習ってなんだったんですか(笑)っていうくらい簡単に散っていった兵(つわもの)がたくさんいたじゃないかと想像するのだけど、僕はそういう種類の人間です。「鉄砲もいいと思うけど、だからなんやねん感は否めない。やっぱ刀」とか言いながら即死したいと常々思っています。ところが、安易な刺激が気持ちいいのでついつい飛びついたりしていて、何にもならない時間を過ごしたりしている。要領の良さや器用さよりも「いやおれ、刀が好きだし」って言って世間の動向を気にせずもくもくと素振りをする、そんな胆力だけあればいいんです。 「ぶたのゲーム」という題のゲームを、今月中に公開したかったんですが、だめでした。とくになんてこともない、ぶたしか出ないゲームとして、最初にぶたが体験する出来事をすべて決めてあった(プレイ時間10分もない量)はずなんですが、それだけだとちょっと成立してない、という結論に至り、要素を足さずにどうにかすることができなくなった。とくにゲーム性がないだけに、逆に終わりというのが難しくなってる。 今月はこんな作業をしました。 - ぶたの心臓のBPMが上下するシステムの仕様変更。 - ぶたがすぐ死亡するように改善 - ぶたの心臓グラフ表示システムの改善 - 絵にノイズを加える方法を改良 - 引用するための種田山頭火の俳句を収集 ## MRubyCS 標準ライブラリ C# でスクラッチで実装中の mruby VM、[MRubyCS](https://github.com/hadashiA/MRubyCS) ですが、今月は標準ライブラリを拡充してました。最新のリリース [0.8.0-preview](https://github.com/hadashiA/MRubyCS/releases/tag/0.7.0-preview) では、`Integer`、`Array`、`Hash`、`String` の同梱メソッドが mruby と完全互換になりました。これで mruby を動かす環境としてはそれなりに実用的になったはずです。 `String` は 文字をUTF8 として解釈するコードを書く必要があって思いのほか時間がもっていかれてしまった。UT8仕様に改めて親しむことになりました。 RustとかSwiftとか、組み込み文字列表現がUTF8 ならもっと楽なんでしょう。 `Hash` あたりは、とくにアルゴリズムとかに難しいところはないんですが、意外にもRubyの仕様としては順序を要求するようになっており、データ構造の変更に迫られることになりました。 ぼちぼち Fiberの実装に取りかかろうと思っているところです。 MRubyCSは、 ゲームエンジン組み込みで使う予定(自分が)なので、Fiberがなければ片手落ちです。ゲームプログラミングは、フレームを跨いだシーケンスのかたまり、つまり非同期処理のかたまりなので、エンジン側からRubyのresume/suspend ができるFiberは是非ともほしい。そして、RubyのFiberと C#のasync/await との統合があってこそC#でmrubyを実装している意味があるってもんです。 VM部分はmruby本家をだいぶ参考にしているるので、Fiberの追加自体はそんなに時間かからないんじゃないかなーと思っています。いまのところ。 Ruby作者のMatz氏も MRubyCSのことをツイートしてくれており、オルタナティブmrubyのひとつとして認識を置いてもらってるみたいで嬉しいです。せっかくなので超実用的なレベルまでもっていきたいです。 ### Untitled とくに生産性もなく、誰かの役にも立たない、ただ文章を書く自体が目的の文章を書いたりする領域をつくりました。