HackerNews

私が今まで書いた最も難しいプログラム

The hardest program I've ever written (2015)

https://journal.stuffwithstuff.com/2015/09/08/the-hardest-program-ive-ever-written/


この記事では、筆者が書いた中で最も難しいプログラムとして、Dart用の自動コードフォーマッター「dartfmt」を紹介しています。このプログラムは、実際には835行で、開発にはほぼ1年を要しました。この間に削除されたコードが2万行以上あるため、1行に対し約3行の削除があったことがわかります。最終的に出来上がったフォーマッターは文字列の空白を調整するもので、その結果、コードは一貫性があり可読性が高くなります。このようなコードフォーマッティングは、行の長さ制限を保持するための工夫が必要で、多くの組み合わせから最適な改行位置を見つけることが非常に難しいと説明されています。Dartの匿名関数や高階関数を利用したコードは、特にフォーマットが難易度を上げる要因となっています。