別言語で実装
大体やりたいことはやった感が出てきたので、go以外の言語で実装してみたいと思う。 やってることはテキスト変換なので、未知の言語の練習にもちょうどよいかと。 ということでRustでやってみる。 前二日間更新がなかったのは、ワクチン副作用でダウンしていたため。
POSTS
大体やりたいことはやった感が出てきたので、go以外の言語で実装してみたいと思う。 やってることはテキスト変換なので、未知の言語の練習にもちょうどよいかと。 ということでRustでやってみる。 前二日間更新がなかったのは、ワクチン副作用でダウンしていたため。
テストカバレッジを100%まであげた。 どうしてここ通らないんだろうってよく見たら変数名間違えていたバグだった。
MDMMLで関数分割してテスト反映してなかったりしていたのを追加。 パラメータゼロ値で呼んだら落ちたり思ったのと違う動きをしていたり。 テストもたまに見返すと面白い。
Ginkgoわからん - umemak の続編。 Itが上から順番に実行されない問題、V2で導入されたOrderedを使えば解決できそう。 https://onsi.github.io/ginkgo/#ordered-containers
MDMMLじゃない話。 https://onsi.github.io/ginkgo/ でテストを、 Describe(){ Context(){ // 準備 It(){ Expect() } // 次の準備 It(){ Expect() } // 後片付け } } みたいな感じで書いていたら、思った通りの動きにならなくてハマった。 どうやら、Contextの中は上から順番に実行されるのではなく、 Describe(){ Context(){ // 準備 // 次の準備 // 後片付け It(){ Expect() } It(){ Expect() } } } となるらしい。 やりたい順番で実行したければ Read more
いまさらながらGitHub ActionsでCIを設定した。 Actionsのバージョン指定なしgoは1.15.15なんだね。もうじき1.18が出るのに。
crontab、-で範囲指定ができるけれど、大小関係が逆だったらどうなるか気になったので調べてみた。 59-1 * * * * time こういうやつ。 dockerでalpine使って動かしたところ、想定通り59,0,1で実行された。
通らなくなっていたテストを通した。 バイナリものはパッと見でどこが違うかわかりにくいのが難点。。
データ構造の変更と、それに関連する部分を修正。 テーブルのセルごとに読み込んで保持するようにした。 テストが通らなくなった。。 セル(小節)ごとに変換したら、ループとか現在のオクターブとか状態として持たせないといけないのか・・ちょっと、あまり、よくない気がする。
やりたかったのは、hタグでセクションをブロック化して取り出して加工だったのだけど、 実際やってみて、hタグでブロック化はHTML的にも無理じゃんってなった。 結局自前でやっていくしかないのか。。 で、これをやっていて思いついたのが、今は読み捨てているテーブルのヘッダー部分をセクション代わりに使えないかなと Read more