2021-10-01
TechLLVMのエラーメッセージはあまり親切でない。Rustの異常な親切さに慣れてきたのでそう思うのかもしれないが。
例えばllvm-disの出したエラーがこれ:
Assertion failed: (InitVal->getType() == getValueType() && "Initializer type must match GlobalVariable type"), function setInitializer, file /Users/yhara/research/llvm-12.0.1.src/lib/IR/Globals.cpp, line 405.
型が違うことはなんとか分かるが、せめて何と何だったのかくらいは教えてくれないとデバッグのしようがない。
2021-10-01
TechLLVMのフルビルドは長い。とても長い。
こういうことがあったのでbcをデコードするツール(llvm-dis)だけ自前ビルドしたかった。
結論からいうとこれでいけた。
githubのreleasesから.src.zipを取ってきて解凍
2021-09-06
Misc
Corne Chocolateを組み立てた。Corneシリーズのうち、Kailh Chocスイッチに対応した薄型バージョン。ChocだけにChocolateなのかな。
現在の仕事用メインキーボードとして使っている。オフィスではレツプリなんだけどテレワークなので、、、
Corneの感想
Corneシリーズを組み立てたのは初めてだけど、よく出来てるなあ…と思った。洗練されてるというか。例えばOLEDに押したとこのキーコードが出るんだよね。完成後はそんなに意味のない機能だけど、組み立て中の動作確認にはとても便利だった。
2021-09-05
Diary
毎年夏の間だけチャレンジしている構文木マクロの実装だが、ようやく「なんとかなりそう」な感じになってきた。
方針を立てたので、あとはぼちぼちやっていくだけ…ではあるけど、あくまでShiikaの方が優先なので、数年後くらいに形になればいいなあ、くらいに思っている。
2021-08-22
Techメモです。
いいこと聞いた。
BiwaSchemeはTS使ってないけど、JSDocの記法で型を書けばtscで型チェックできるってことか。
2021-08-04
Diary近況です。
7月は、パターンマッチの準備段階としてオブジェクトにクラスの情報を持たせたりなどした。1.classができるようになった。
8月はいよいよパターンマッチの実装に入る。今は作戦を練っているところ。
2021-07-10
Diary先週の土日にこのオンラインセミナーに参加してみた。
定理証明は、名前は聞くけど触ったことはなくて、興味はあるけど本を買うほどのモチベーションはないし、誰か詳しい人が要点だけ教えてくれたりしないかな〜。と思っていたところ、まさにぴったりのイベントが。なんていうか、昔ならこういうのは東京まで行かないと参加できなかった気がするけど、家からオンラインで参加できるようになったのは嬉しいね。
日程は5時間 x 2日という長丁場で、説明だけでなく練習問題もあるのでとっても疲れた!でもこういうのって自分で手を動かさないと「わかったような気になった」だけで終わりがちだから、演習があるのはとてもありがたい。
Coqの感想
2021-07-03
Diary近況です。
今月はenumを実装した。ようやく念願のOption型が使えるようになるぞ…と思いきや、パターンマッチがないのでメソッドが書けないことが判明。道は長い。
ちなみにクラス名はOptionじゃなくてMaybeにする予定。HaskellとRakuくらいでしか見たことないけど、コンピュータぽくなくて好きなんですよね。あとOptionという名前はCLIアプリで普通に使いそうとか、Maybeの方が(日本人にとっては?)初学者に意味がわかりやすいとか。
2021-06-27
Event