Linuxカーネルの開発者であるLinus Torvalds氏は5月29日(米国時間)、「LKML: Linus Torvalds: Re: clean up kernel_{read,write} & friends v2」において、ソースコードの1行当たりの文字数を80までとする現在の制限によって生まれる過度の改行はソースコードにとって良くないことであり、さまざまな問題を引き起こすと指摘した。

同氏はメールの中で次のような意見を述べ、制限を緩和する方向の意見を示している。

grepのようなコマンドは基本的に行単位で検索を行うので、過度に改行されたソースコードだと扱いにくい。

すでに多くのユーザーが80カラムの幅のターミナルを使用せず、より広げて使用している。同様の理由で、高さも25行よりも広げて使っている。

少数のユーザーが小さいターミナルウィンドウを使用しているという理由で、80カラムの幅に収められたソースコードのパッチを送ってくるが、正直なところ、このパッチは読みにくい。

ディスプレイは基本的に横に長い。

長いラインは基本的に便利。

(Linus Torvalds氏は)デフォルトではターミナルウィンドウのサイズを100×50にしているが、実際には使用時に142×76に拡大して使っていることが多い。ps ax、top、git diff -statといったコマンドの出力など、より大きなターミナルウィンドウのほうが便利。

ハードウェアが制限されているユーザーに過度に合わせることで、よりよいリソースを持っているユーザーに不便を強いるべきではなく、合理的な範囲内で対応していくべき。

2020年において80カラムの制限はもはや妥当とは言えない。80年代ですら多くのユーザーは132カラムのターミナルウィンドウを一般的に使用しており、80カラムの制限を不動の標準とすべきではない。

ローカルの反復変数は依然として「i」といったものを使うが、変数名として10文字から15文字程度の変数名を使うのは完全に合理的であり、ソースコードを読みやすくしてくれる。

LKML: Linus Torvalds: Re: clean up kernel_{read,write} & friends v2

Linus Torvalds氏のメールに続く形で次のメールが投稿され、ソースコードの1行当たりの制限をこれまでかなり厳密に80文字としていた部分を、合理的であれば100文字でもよいといった内容に書き換えるパッチが示されている。

LKML: Joe Perches: [PATCH] checkpatch/coding-style: Allow 100 column lines

ソースコード1行当たりの長さを80文字に制限するコーディング規則は、多くのプロジェクトで見られる。Linuxカーネルがソースコード1行当たりの文字数を引き上げた場合、ほかのプロジェクトも同様の動きを見せる可能性がある。

本記事のタイトルが「Linuxカーネルソースコード、1行の80行制限を100行まで緩和」となっておりましたが、正しくは「Linuxカーネルコード、1行の文字制限を80字から100字まで緩和」となります。あわせて、一部、誤まっている部分の記述を修正いたしました

ご迷惑をおかけした読者の皆様ならびに関係各位には深くお詫び申し上げます。