2022-03-20
Tech自作キーボードを何台も組み立てていると、だんだん気になってくるのがキースイッチのコストである。10個450円とかで買えるとはいえ、1台分だと数千円になってしまう。
ということで、もう使わなくなったキーボードからキースイッチを回収することを考える。
梅コース
一番安いのだとこういう道具がある。ばねの力で吸引力を生み出すタイプで、はんだごてを当てて、溶けた瞬間にポンと吸ってやる。
このタイプは前に触ったことがあるけど、キースイッチの場合はあまりうまくいかなかった。タイミングがシビアなのかな?
2022-03-18
Techちょっと形式手法ツールAlloyを使ってみたい場面があったのでとりあえずインストールしてみた。昔ちょっとだけ触ったことあるんだけど。
Macだとbrew install alloy
で入るので楽。
とりあえずチュートリアルやるか〜と思ったものの:
Visualizeすると「全部非表示になりました。Themeを設定してください」みたいなメッセージが表示される。うーん。仕様が変わったのかな。
2021-10-01
Tech自作言語の開発中、LLVMが以下のメッセージを吐いて死ぬのを調査したメモ。
./bin/llvm-dis: error: Invalid instruction with no BB (Producer: 'LLVM12.0.1' Reader: 'LLVM 12.0.1')
このメッセージで検索すると lib/Bitcode/Reader/BitcodeReader.cpp がヒット
if (!CurBB) {
I->deleteValue();
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-08-22
Techメモです。
いいこと聞いた。
BiwaSchemeはTS使ってないけど、JSDocの記法で型を書けばtscで型チェックできるってことか。
2021-05-31
Tech今までいわゆるスニペット系のvimプラグインは使わずに来たのだが、Rustを書くようになって
Default::default()
とタイプするのが面倒
collect::<Vec<_>>
とタイプするのが面倒
use std::collection::HashMap;
とタイプするのが面倒
…のように、スニペットの必要性が分かるようになった。
どのようなプラグインがあるかは以下がとても参考になった。
2021-05-29
Tech処理系Slackで定期ミートアップをやろうという話になったので、せっかくだからShiikaについて相談したいことを話してみた。以下は発表資料。
Shiikaとは
- 雑に書ける静的型付け言語がほしい
- 既存の静的言語は「性能」とか「ローレベル」にチューニングされているが、それらを捨ててLL的な方向に振る
- Ruby的な書きやすさ+静的型チェック
- 動的言語の楽しさとは別に、型からデザインする楽しさというのがある
2021-05-09
TechALETH42を組み立てた。キー数が少ないのでキーマップ調整に手間取ったけど、まあまあいい感じになってきた。今は自宅で仕事するときに使っている。
↑はじめての#KEEB_PD。
発端
もともとは分割キーボードにしか興味がなかったのだが、nillpoさんのKUMOキーボード(この3枚目)を見てrow-staggeredな一体型のよさに目覚めてしまったのだ。とはいえKUMOはもう手に入らないので諦めていたところ、タイミングよくALETH42が登場して、作ってみることにした。