仕事の合間にやっていること、メモリ確保、寛解
仕事でやっていることは書けたり書けなかったりするので、仕事の合間でやっていることを書いてみる。
最近はAIのおかげで調べ物も捗るし、動くだけのコードならある程度は魔法のように出せるようになってきた。 もちろん魔法たるためには出力されたコードを読める必要があって、魔法を読むために魔法を使ったりする再起人間になっている。
そんなことをしているとどんどん表面だけしか理解できてないなって気持ちが高まってきて、ライブラリの内部実装がどうなってるかとか、言語の内部実装とかを読まないと最終的にどういう処理が行われているかの具体性が上がらないな~という気持ちになる。
例えば、普段何も気にせずPythonで空のリスト宣言してポンポン色んなモノ放り込んでるけど、放り込んでるときってメモリ上ではどういう処理してるんだ?ということを、アルゴリズムの本で計算量について途方に暮れている時にふと思った。
調べてみたら、要素が追加されて領域が足りなくなったときにメモリを再確保しているようだった。それはそうすぎる。
で、再確保するコードが面白くて、新しいサイズに対してちょっと余裕を持たせて確保したあと、下位2ビットを0にして4の倍数に丸めてメモリアクセスを効率化しているらしい。Python頑張ってる。どうせ他の言語も頑張ってるんだろうな。
こういうことを仕事の合間に調べるのが最近は楽しい。 実務は実務で面白いことはあるけど、合間にやることは興味だけで進められて責任もないのでおやつ食べてるみたいな気持ちになる。
この1年は休養期間といった感じで、あんまり自分から何かをする気が起きなくてこういうちょっとした深堀りみたいなものをやる気が全く起きなかったんだけど、最近は徐々にそういう気持ちが蘇ってきて人生もちょっと楽しくなってて、ちょっと寛解を感じる。