憂鬱な午後のひととき

8月30日_

Shibuya.JS同窓会

なぜか呼ばれたので参加. よく考えたらmd5.jsやsha1.jsを作っていたのだった.

8月26日_

関数ポインタの強制キャスト

x64的には同じはずのCの配列からなるクラスの参照を受ける関数を配列へのポインタを受ける関数にキャストしていたら, WebAssemblyで意味不明な挙動をしてはまった.

struct A {
    int x[4];
};
void f(A& x);
void (*g)(int *) = (void (*)(int *))f;

コードは実行されるけど中身がおかしいときと関数の型が違うと実行時におこられることがあった. 適当にラッパー関数を用意したら正しく動くようになった.

8月25日_

travis-ci

手元では正しく動くのにtravis環境では落ちる症状になった. 最初はコンパイラの相違かと思ったがバージョンを合わせても同じ. 確定的なコードなのにretryするとclangで落ちるときやgccで落ちる問いがあってよく分からん. デバッグできないので辛い.

結局コードに怪しいところを見つけて直したら動くようになったのでやっぱり自分のコードが悪かったのだろう.

ただ手元でtravisと同じオプション(-O0 -fsanitize=address)で何度やってもエラーにならなかったのは不思議だ. valgrindでも正常終了した.

8月24日_

Ubuntu 18.04.1

Ubuntu 16.04からupgradeしたらペアリングの計算が多少遅くなった. OSやBIOSのupdateも混ざってるからどれが原因かは分からんが残念だ.

まあ, 特に問題なくupgradeできたことを喜ぶべきか.

8月23日_

C++17勉強会参加

@kariya_mitsuruさんによるC++17の新機能(非順序)連想コンテナ編. 2年前ぐらい規格書を見たけど細かいところは全然覚えていない. 勉強になった.

8月22日_

mcl

最近いろんな人から使い方やなんやら質問が来る. ありがたいけど一つ一つ対応してると結構時間食うなあ.

8月20日_

コンピュータセキュリティシンポジウム2018

初めて参加と発表申し込みしてみた. 論文締め切りでなんとかそれっぽい形にする.

8月16日_

有給

金曜日に有給とって散髪など普段休日にやることをやってしまうと, まだ二日も休みがあると思ってうれしくなる.

休みといっても論文読んだり書いたり, コード書いたりで普段やってることと同じなんだが気持ち的に大分違う.

8月15日_

『日中戦争全史上』(笠原十九司)

ハーグ陸戦条約により無抵抗な敵兵を殺傷することが禁止されていても無視する. 捕虜の待遇に関する条約には加盟しない. 宣戦布告せずに侵攻し, 事変と呼んで「戦争」ではないから捕虜の扱いに戦時国際法は適用されないとう目茶苦茶な論理. 軍の暴走を後追いで追認する内閣や天皇, 煽情的に記事にする新聞. それで喜ぶ国民. 南京進撃の行軍中の食料, 軍需物資運搬労力などは現地調達せよ(=住民から奪え)というお達し.

何もかもが酷い. イラン日報, 非戦闘地域, オリンピックボランティアなど連想して暗澹たる気持ちになる.

8月14日_

mutable

XbyakのVsib用処理のためにAddressクラスにあったmutable変数を除去. 他にもmutableが若干残ってるのでできれば削除したい.

8月13日_

流星群

明け方3時頃起きて小一時間外をうろちょろしてみたけど雲がうっすらとあって見えなかった. 残念.

8月12日_

京都

久しぶりに知人に会っておしゃべり. 来月, 勉強会でまた会いそう.

8月10日_

お寿司

奈良のお寿司屋さんに両親を連れて行く.

8月9日_

nakameguro_feature.cpp vol.6参加

@Flast_ROさんの資料. 例外仕様が削除された話. 複雑な上使い勝手が悪かったので消えてもしかたない.

雑談でC++からCの関数を呼び, その中で呼ばれたC++関数がthrowしても元のC++でcatchできる件. いつからかは知らないけどg++はデフォルトで対応している. VCは/EHaオプションありで対応する. callback関数の中でthrowしてもちゃんとcatchできる. cf. サンプル

8月1日_

ゼロ知識証明の証明方法

自分が考えたアイデアをどうやったら証明できるかいろいろ議論する.


御意見は光成滋生<herumi@nifty.com>までお願いします