コンパイラなどを作り始めると本来自分が作りたかったわけではないものについてもせっせとコードを書かないといけなくなる。とくに標準ライブラリの貧弱なCで書いているからそうなってしまうんだろうけど、文字列とかハッシュテーブルみたいな基本的なものも自分で書かないといけない。仮に、ライブラリが充実していたとしても、コンパイルする言語の文法の細かいポイントなどは個別に作り込んでいかなくてはいけない。そういうのはただ複雑なだけで、別に何か勉強になるとかそういうものではなく、ただ地道にコードを書いていかないといけないだけのものだ。 こういう話はコンパイラに限ったものではない。なにを作るにしても、自分の最初から作りたいと思っていたところのコードは分量にして1割とか2割とかで、残りはただ単にひたすらガシガシと書いていかないといけないだけのものだったりする。本質的なものではないなら書かずになんとかならないかな?