Hayakawaおれは最近、自分のエディタを開発している。programmersイージックと読む。codingとか、プログラミングで典型的な三重ループのインデックス名だったりとか、こじつけはいくらでもある。実際には、押しやすいことが一番だと思った。ijkは右手の2本だけで瞬時に押せる。viは左右を使わないといけない。emacsとかはeというエイリアスをつけてる人がいるが、これは反則だろう。Rustを学習するにあたって、適度な演習問題がほしかったからに他ならないが、今はこれが生き甲斐というかおれの人生そのものだと思うようになっている。おれはエディタに魅惑された。他にもやらないことは山程あったように思うのだが、朝から晩までずっとエディタのことばかり考えている。他のことを一切考えられないし、エディタを開発しない人間を憎いと思うようにすらなっている。エディタアスペかエディタサイコパスか。自分の中のエディタ熱が恐ろしい。エディタ開発の魅惑とは何なのか。したらundoが出来るようになるのか。やってモードを管理するか。viのようなモードありのエディタを作ろうとすると、多くの設計問題に遭遇する。エレガントに、理路整然とした形で作り上げるか。煩雑な書き方をすれば、たちまちコードは膨れ上がり、おそらくバグは永遠になくならないか、無限に同じようなコードやつじつま合わせのようなコードを書き続けることになる。従って、いかにしてエディティングの根源にある法則を見出し、それを実装するかが求められる。Rustにより開発されているエディタというのは他にも山程あって、それぞれにコンセプトがあり、設計があり、同じようなことをやっているはずなのにコードの形が全く違うということもある。この繊細さに魅了されている。他の人たちもそうなのだろう。自作言語、自作OS、それぞれがほぼ100%の確率で人類にとって無価値になるものをただ楽しさのために作ってしまう人たちがいる。自作エディタも、そんなものの一つなのだと思う。ABC155における言語差問題について【競技プログラミング】ダイクストラ法の計算量はなぜO(E)なのか今日のコンテストで自分の頭の悪さがわかった。【競技プログラミング】ナイーブな解法を考えてからDPに機械的に変形するテクニックCodeforcesで青色に昇格しました!!!AtCoderとの違いや活用法を紹介します。