andante

2015-11-22

1121

詫び石の慣習だけが残り誰かに謝罪するときにはきれいな石をいくつか見繕って差し出すようになった遠未来

詫び石枯山水の用語のようでもある中心をすこし外して置かれた詫び石がなんともいえない趣を醸し出しています


昨晩はVM変換器の第一段階を終わらせてちょっと最適化めいたことをしていましたレジスタが2個しかないし即値代入ができるのが1個しかないのでポインタに演算してスタックを触るとかの場合にキマジメに演算するよりも+1命令これはALUだけでできるを積み重ねたほうが短くなったりしますこれもっと便利なCPUを作ったほうがいいんじゃないかなあでも制御コードは16bitアーキテクチャのいっぱいいっぱいだしなあでも実在の16bitCPUは乗算とか除算とかできたはずだしちょっと仕組み自体が違うのかもこのへんってヘネパタパタヘネあたりを読むとわかるのかなそこまでガッツリやるつもりは別にないんだけど


お昼から散歩にゆきました9kmほど歩いたようです上野には大きな公園と科学館と博物館と美術館があるのだと知ってはいたけれどそういえばこういうところなんだったないいなあと思いました手をつないだ男女がたくさんいてああいいなあ僕も独りじゃなくて来たいなあと思いました何年も前に行ったことあるはずなんですけどね
あとは何枚か写真を撮りました歩いているとほんとうに些細なことでもなんとなくおもしろく思えることがあってそういうときに写真を撮るのは楽しいなあと思いますこれは別にいいカメラが必要というわけでもないのでiPhoneのカメラで十分です
でも空がきれいだなと思ったときはやっぱりいいカメラがほしいのかもしれません
http://twitter.com/necocen/status/667963495288172544/photo/1

夕方に帰ってきてVM変換器をいじっていたらfから飲みに誘われたのでf,λと焼肉を食べました焼肉って久しぶりな気がするあいかわらず禁酒中だったけど楽しかった
そのあと彼らに誘われてシガーバーというところに行きました僕はお酒も煙草ものみませんでしたが彼らは一本で千円だかする葉巻をふかしていましたすげえこんなのマンガか映画でしか見たことないぜあと馬刺がおいしかったです

彼らに会うのは一時期すごく気後れしていたことがあるのだけど今はそれほどでもありませんこれは僕が自分の日々やっていることに以前より自信を持てるようになったからかもしれないし単に精神の工合が良くなってきているからなのかもしれませんでもまあやっぱり僕なんかと比べると彼らはずいぶん良い暮らしをしているような気がするな僕はいつになっても子供みたいだそうでありたくないと思うような気もするんだけどそうでなくありたいともあまり思わない気がするこういうものをどのように解決すればいいのか僕にはまだよくわからない


これからお風呂に入ってそれからVM変換器の続きをやります今夜のうちに関数呼び出しまで書けると思うんだけど複数ファイルに対応するのはまだあんまり考えてないまあ難しくはないでしょうrubyだし

1122

昨晩はVM変換器を一応完成させました関数からの戻りに不具合があって最適化に失敗していたちょっと手間取りましたがでも次の章から使う標準ライブラリを含めたプログラムを変換してみたら行数が$2^{15}$を超えたのでこれはもうCPUエミュレイタでは実行できませんこの先はVMエミュレイタでやるしかないのか……

と思ったけど関数呼び出しとかを共通化してやればもっと短くできるかもと思ったので今日はそれをやりましたそしたら43530行だったのが30565行まで縮んだのでやったー実行できるぞと思ったのだけど実行してみたらなんだか動作がおかしいですスタックポインタがメモリ領域を超えているいわゆるスタックオーヴァフローってやつだようなのでcallかreturnのどちらかが壊れているのだと思うのですが本に載ってるテストコードはちゃんと動いていたので謎です元のプログラムはさすがに巨大でデバッグできないのでなんか自分でテストコード書かないとだめかなああるいは元のプログラムをVMエミュレイタで確認するのもいいかも

あとは屍者の帝国原作を読んでいます三年前に初めて読んだときはまあ普通におもしろいなあとしか思ってなかったけどいま読み返すと円城塔らしさがガンガン出ててめっちゃ楽しい今夜読みおわると思うあーでもVM変換器いじるのとどっちやろうかそういえばVM変換器末尾再帰最適化とかもしてみたいよね再帰っていうかあれでしょ末尾の関数呼び出しでスタックそのままにしておくやつ


明日もまだ休みうれしい