2020年7月 (BiwaScheme rollup化)
近況です。
Shiika
Genericsを導入した。具体的には ary = [1]; ary.first
で 1
が取れるようになった。極めて地味だが、これをちゃんと実現するにはArray<T>
という型が必要なのだ。
次の作業としては無名関数(クロージャ)の実装を予定している。ちょっと考えた限りではそんなに難しくなさそう。
BiwaScheme
数ヶ月前からぼちぼち進めていたrollup化を完了させ、masterにマージした。後方非互換はないつもりだけど、さすがにパッチの規模が大きいので、どこかが壊れている可能性は否めない。いったんこれでv0.7.1としてリリースする予定。
ともあれ、10年以上鎮座していた巨大なwith文を削除できたのはまことにめでたい。with文、最近JS始めた人はもう聞いたことないかもしれないな…。
次の作業は特に決めてないけど、しいていえばhygenic macroの実装に再チャレンジしたい。https://github.com/nyuichi/r7expander を移植したらうまくいかないかなぁとか淡い期待を抱いている。
VPS移行
このブログなどをホスティングしているVPSを、Cent6からUbuntuに移行した。これを機会に、手作業で環境をいじっていたのをやめ、Itamaeで構築するようにした。いまはVPSを2つ借りている状態だけど、あとはドメインとhttpsの設定が終われば古い方を解約できる。
「移行した」とさらっと書いたが、実際には今年の冬くらいからやり始めていて、なんだかんだで半年くらいかかってしまった。あんまり好きな作業でないので、気が向いたときだけ作業してたのだけど、まあなんとか終わりそうでよかった。
スピードキューブ(BLD)
ルービックキューブを目隠しで解くという技術が存在する。blindfoldとかbldとか呼ばれる。もちろんぐちゃぐちゃにするところから目隠しだとさすがに解けないので、解く前の状態は見てもよいことになっている。状態を記憶→アイマスク着用→キューブを回して揃える、という流れ。
具体的な手順はこの動画シリーズで学んだ。T-permとY-permを繰り返して揃えてくやつ。
目隠しがやりたいというよりはbldの解法を調べるのが楽しくて、今はM2法を飛ばして3-styleの解説を読んでいたりする。実際の目隠しは成功どころかチャレンジもしていない。
自作キーボード熱再燃
長らく自作のLet's Splitをendgameとして使っていたが、ここにきてまた気になるキーボードが出てきてしまった。このままいくとAlpha 28とALETH42を作ることになりそう。
Alphaは28キーしかないキーボードで、30%keyboardと言われるGerkinやNomu30よりもさらに少ない。その貴重なスペースを2uスペースバーに費やしてるところがばかばかしくて良い。あと見た目がとてもかわいい(重要)
ALETH42は40%キーボードで、Planckのケースと互換性があるらしい。本当はKUMOがよかったんだけど、もう手に入らないみたいで残念。ALETH42は配列が微妙に違う(Lの右に1キーしかないとか)が、ロータリーエンコーダが付けられる。TABキーに割り当てると、Cmd-Tab, Cmd-Shift-Tabが回転で入力できて快適、みたいな噂を聞くので試してみたい。
とかいいつつ、手元には作りかけのHelixがあるんだよな…。まずはこいつをいい加減仕上げてやらないと。