Shibuya.JS同窓会
なぜか呼ばれたので参加. よく考えたらmd5.jsやsha1.jsを作っていたのだった.
Shibuya.JS同窓会
なぜか呼ばれたので参加. よく考えたらmd5.jsやsha1.jsを作っていたのだった.
関数ポインタの強制キャスト
x64的には同じはずのCの配列からなるクラスの参照を受ける関数を配列へのポインタを受ける関数にキャストしていたら, WebAssemblyで意味不明な挙動をしてはまった.
struct A { int x[4]; }; void f(A& x); void (*g)(int *) = (void (*)(int *))f;
コードは実行されるけど中身がおかしいときと関数の型が違うと実行時におこられることがあった. 適当にラッパー関数を用意したら正しく動くようになった.
travis-ci
手元では正しく動くのにtravis環境では落ちる症状になった. 最初はコンパイラの相違かと思ったがバージョンを合わせても同じ. 確定的なコードなのにretryするとclangで落ちるときやgccで落ちる問いがあってよく分からん. デバッグできないので辛い.
結局コードに怪しいところを見つけて直したら動くようになったのでやっぱり自分のコードが悪かったのだろう.
ただ手元でtravisと同じオプション(-O0 -fsanitize=address)で何度やってもエラーにならなかったのは不思議だ. valgrindでも正常終了した.
Ubuntu 18.04.1
Ubuntu 16.04からupgradeしたらペアリングの計算が多少遅くなった. OSやBIOSのupdateも混ざってるからどれが原因かは分からんが残念だ.
まあ, 特に問題なくupgradeできたことを喜ぶべきか.
C++17勉強会参加
@kariya_mitsuruさんによるC++17の新機能(非順序)連想コンテナ編. 2年前ぐらい規格書を見たけど細かいところは全然覚えていない. 勉強になった.
mcl
最近いろんな人から使い方やなんやら質問が来る. ありがたいけど一つ一つ対応してると結構時間食うなあ.
コンピュータセキュリティシンポジウム2018
初めて参加と発表申し込みしてみた. 論文締め切りでなんとかそれっぽい形にする.
有給
金曜日に有給とって散髪など普段休日にやることをやってしまうと, まだ二日も休みがあると思ってうれしくなる.
休みといっても論文読んだり書いたり, コード書いたりで普段やってることと同じなんだが気持ち的に大分違う.
『日中戦争全史上』(笠原十九司)
ハーグ陸戦条約により無抵抗な敵兵を殺傷することが禁止されていても無視する. 捕虜の待遇に関する条約には加盟しない. 宣戦布告せずに侵攻し, 事変と呼んで「戦争」ではないから捕虜の扱いに戦時国際法は適用されないとう目茶苦茶な論理. 軍の暴走を後追いで追認する内閣や天皇, 煽情的に記事にする新聞. それで喜ぶ国民. 南京進撃の行軍中の食料, 軍需物資運搬労力などは現地調達せよ(=住民から奪え)というお達し.
何もかもが酷い. イラン日報, 非戦闘地域, オリンピックボランティアなど連想して暗澹たる気持ちになる.
mutable
XbyakのVsib用処理のためにAddressクラスにあったmutable変数を除去. 他にもmutableが若干残ってるのでできれば削除したい.
流星群
明け方3時頃起きて小一時間外をうろちょろしてみたけど雲がうっすらとあって見えなかった. 残念.
京都
久しぶりに知人に会っておしゃべり. 来月, 勉強会でまた会いそう.
お寿司
奈良のお寿司屋さんに両親を連れて行く.
nakameguro_feature.cpp vol.6参加
@Flast_ROさんの資料. 例外仕様が削除された話. 複雑な上使い勝手が悪かったので消えてもしかたない.
雑談でC++からCの関数を呼び, その中で呼ばれたC++関数がthrowしても元のC++でcatchできる件. いつからかは知らないけどg++はデフォルトで対応している. VCは/EHaオプションありで対応する. callback関数の中でthrowしてもちゃんとcatchできる. cf. サンプル
ゼロ知識証明の証明方法
自分が考えたアイデアをどうやったら証明できるかいろいろ議論する.