ソースコード1行80桁の制限廃止! プログラム業界に革命キタ━━━━(゚∀゚)━━━━!!

■ このスレッドは過去ログ倉庫に格納されています
0001ニクス(日本のどこかに) [US]2020/06/05(金) 17:00:56.58ID:VqfCrYbt0●?PLT(13000)

 Linuxカーネルのコーディング規約から、1行を80桁以内とする制限が撤廃された(Linus Torvalds氏のメーリングリスト投稿、checkpatchのコミットメッセージ、Phoronix、The Register)。

 Linus Torvalds氏によれば、多くの人が80桁のターミナルを使わなくなって久しく、1行80桁制限は合理的でないという。
桁数制限は必要以上の改行を生み、さまざまな問題を引き起こす。
中には小さなターミナルウインドウを使用している人もいるという主張もみられるが、何を使うのもその人の選択だ。
そのハードウェアの制限を全員が共有する必要はない。長い行は単純に有用であり、どこかで改行が必要になるにしても80桁に制限する理由はまったくないとのこと。

 これに伴ってcheckpatchでも80桁を超える行に対する警告表示が廃止されている。
1行を80桁以内に収めることは現在でも望ましいが、checkpatchがわざわざ警告を表示するほど明確な制限ではない。
デフォルトでは制限値が100文字まで増加しているが、こちらも明確な制限に基づくものではなく、
行が若干長めになっても警告なしで収まる程度の文字数が選択されているようだ。

Linuxカーネルのコーディング規約、1行80桁の制限を撤廃
https://www.zaikei.co.jp/article/20200604/569722.html

0488ネレイド(家) [FR]2020/06/06(土) 19:34:20.00ID:SuOHmGew0
>>428
ビデオ端末がない頃はパンチカードを使ってプログラムを入力してたのよ
そのパンチカードが80桁だったのでCOBOLとかFORTRANとかが1行80桁前提の仕様になった

0489ネレイド(神奈川県) [AT]2020/06/06(土) 19:40:29.24ID:VSXBIEUR0
>>477
一番信用できるのはソースコード、次がコメント。
設計書?設計書があってる保証がどこにあるんだ?

0490デネブ・カイトス(福岡県) [US]2020/06/06(土) 19:48:52.68ID:OeTIlMej0
>>487
コメントはスパゲティコードを隠すためのものじゃないぞ
コメントが有ったところでめちゃくちゃだったらどうする?
状況はさらに悪化する

0491ジャコビニ・チンナー彗星(東京都) [US]2020/06/06(土) 20:02:13.26ID:tsiQpyB50
コメントのないスパゲティとコメントのあるスパゲティの保守をやった経験からすると
同じスパゲティならコメントがあった方が多少はましだな
例えコメントとコードの実態が合っていないとしても
このコードを書いた奴がここで何をしたかったのかを探る手がかりくらいにはなる

0492熱的死(家) [SE]2020/06/06(土) 21:13:54.17ID:l3byG3az0
コメントは自分用やし…。
書いてた頃は転職する予定なかったんだスマン。

0493ベテルギウス(東京都) [US]2020/06/06(土) 21:28:00.94ID:h/ydsbnZ0
>>446
会社の仕様によって決まるな、社会インフラや金融系ならコード上にパラメータの説明を書くのが当たり前。
ドキュメントに書いてあるなんて言ってる奴は追い込まれた時の状況知らないweb屋ぐらいのもんでしょ。

0494ベクルックス(大阪府) [ニダ]2020/06/06(土) 21:36:57.20ID:gdAFNpNN0
>>451
また懐かしいものを。
30年近く前だろ、あれが fj に投稿されたのは。

てか、あれって80桁制限とかあったっけ?
xterm の上で走らせても普通に右端まで行ったような…

0495地球(東京都) [US]2020/06/06(土) 22:36:37.36ID:McsDY0sy0

0496ベクルックス(広島県) [CN]2020/06/06(土) 22:50:27.50ID:OzXBpg2l0
変数はアルファベット2文字で

0497バーナードループ(神奈川県) [IR]2020/06/06(土) 23:30:41.82ID:zpdGVnY70
pythonといい、横に長くして行減らすってほうが流行ってきてるな
昭和は正しかったか

0498冥王星(大阪府) [GB]2020/06/07(日) 00:35:11.99ID:Tm1dvmLB0
>>473
等号の向きが逆じゃねえか

0499ダークマター(家) [CN]2020/06/07(日) 00:47:36.66ID:H0u/bpwF0
>>498
等号??

0500テンペル・タットル彗星(神奈川県) [DE]2020/06/07(日) 01:18:18.77ID:W0U+p3iQ0
>>489
コメントもソースの一部だと思うが

0501エイベル2218(東京都) [CN]2020/06/07(日) 01:21:31.74ID:7GHYoYZL0
以上、以下、未満、を超える、はあやふやに使われがちなので、注意はするね

0502テンペル・タットル彗星(神奈川県) [DE]2020/06/07(日) 01:40:13.68ID:W0U+p3iQ0
>>501
昔はそのあたり厳しかったね
oやiとか見間違いやすいのを極力使わないとか

0503エイベル2218(東京都) [CN]2020/06/07(日) 01:53:57.09ID:7GHYoYZL0
金曜までに納品します、って、2通りの解釈があってモヤモヤする

0504ベラトリックス(兵庫県) [US]2020/06/07(日) 08:03:53.75ID:nyBTrdiq0
>>503
2通りあるかい?
金曜日も含む意味と理解するけど。

0505カノープス(滋賀県) [ES]2020/06/07(日) 09:05:36.54ID:DfC+uvuj0
>>504
金曜になるまでに、
という意味でとれない事もない

0506ウォルフ・ライエ星(大阪府) [GB]2020/06/07(日) 09:17:39.74ID:GnSKjE8n0
>>457
VHDL知らんけど
Cとかで割込みハンドラ重杉だと、動くときと動かないときがでるようなもん?

0507スピカ(東京都) [CN]2020/06/07(日) 09:18:46.64ID:uw7NqHBu0
プログラムの構文が変わって文が長くなるようになったのか
プログラマが変わって文を長く書くようになったのか

時代を問わず同じ品質のプログラムなら全て80桁になるはずでは🤔

0508ウォルフ・ライエ星(大阪府) [GB]2020/06/07(日) 09:19:21.50ID:GnSKjE8n0
/* この部分は意味不明なコードだが削除すると動かなくなるので、削除禁止! */

0509はくちょう座X-1(千葉県) [US]2020/06/07(日) 09:21:31.87ID:2vmhHy6O0
>>507
上のほうでも誰かが書いてるけど、変数名とかメソッド名を、省略せずに長く書くようになったのも一因じゃね?

0510スピカ(東京都) [CN]2020/06/07(日) 10:22:01.92ID:uw7NqHBu0
>>509
でも、Linuxカーネルだからなあ。
可読性が低い名前なんて元々つけていない可能性すらある。
この人たちの言う有用な長い行とはいったい。。

0511水メーザー天体(東京都) [RO]2020/06/07(日) 11:06:09.40ID:NP7ia+rL0
Ubuntuでepgstationを動かしている

0512シリウス(家) [US]2020/06/07(日) 11:14:35.52ID:ld2N+b6b0
>>506
あれはプログラム言語ではあるけど実際に動くのはCPUではなく回路そのものだから
モジュールそれぞれが強制的に独立したスレッドになるようなもんだとか

0513冥王星(大阪府) [GB]2020/06/07(日) 11:21:46.45ID:Tm1dvmLB0
80桁のターミナルとかいつの時代じゃい

0514白色矮星(東京都) [JP]2020/06/07(日) 11:55:31.07ID:VnddUcWt0
>>507
入力補完が出来てから変数名が長くなった

0515ベラトリックス(兵庫県) [US]2020/06/07(日) 12:04:30.05ID:nyBTrdiq0
>>505
HDLにもソフトと同じく逐次処理と並行処理があって、単純に書くなら逐次処理だけでも使えなくはない。ちゃんと性能出すなら並行処理だけど。
そのへんソフトのシングルスレッドとマスチスレッドと考えは似てる。

0516ミマス(神奈川県) [US]2020/06/07(日) 12:44:56.87ID:IpPhM1I20
改行入れずに一行で書けよ

0517エリス(神奈川県) [ニダ]2020/06/07(日) 12:47:24.47ID:Z6UJXPmS0
会社なんかだとプロジェクトで決まったフォーマッターの使用が強制されているけど、
おかしなところで改行されるので気持ち悪い
特にJavaのequalsの比較関連とか

0518スピカ(東京都) [US]2020/06/07(日) 13:31:40.84ID:Ko3ttScp0
>>512
ハードウェアだから、論理回路上を直接電子が走って作用する。
複雑な回路なら出口に行くまで時間が掛かるが簡単な回路だとすぐに出口に行く。
で、組み合わせると速度の違いで論理が不安定になって誤動作したりするから、各回路に同じタイミングで論理が確定する様な仕掛けを設けるのさ。

0519レグルス(大阪府) [ニダ]2020/06/07(日) 15:39:58.84ID:YfvDPvAs0
>>518
細かいところやが、最初の考え方がちゃうぞ。電流・電圧の伝播速度≠電子、正孔の速度。
電流・電圧の伝播ってのは電磁気力による相互作用だから、金属導体内でもほぼ光速。

最も数十年前の MHz オーダーの時代から今の GHz オーダーの時代に至って(1clk が nsec 以下)、
基板はもちろん、chip 上の配線長の問題が非常にシビアになっているのは確か。

だから、clk/data スキューが問題になって、特に外部 bus なんかはパラレル物はほぼ一掃。

0520水メーザー天体(家) [US]2020/06/07(日) 18:16:49.68ID:7Y3/3+mS0
BASICの頃は、1行(行番号も含めて)255文字という制約がある中でIF文は1行で書かないといけない(次の行から別のブロックになる)という規約があって
当たり判定とかの処理になるとギリギリになるんだけど
末期の頃にPODP積んでHIMEM.SYSとかを駆使しまくるとかした環境向けに作ったら当たり判定への要求が高まり過ぎて255文字じゃ足りなくなったので
判定文をサブルーチン化するとかしてた。最終的に判定だけで1000文字超えてた

てかC言語は学習済みだったがMASTER.LIBの使い方はついぞ分からんかった(LIBの方はフリーだったがリファレンスの方がシェアウェアだったってのもあったが)

0521水メーザー天体(家) [US]2020/06/07(日) 18:24:14.61ID:7Y3/3+mS0
最近になってサクラエディタでゴリゴリだったのをVSCodeに移行したので、ちょっと自分内コーディング規約について変革する予定は未定

0522青色超巨星(東京都) [CN]2020/06/07(日) 19:10:33.42ID:GUyWuXXk0
>>432
契約関係も無いのに命令するとか、死ねよ

0523デネブ(神奈川県) [US]2020/06/07(日) 19:30:29.79ID:G4taK6zp0
>>516
昔はone-linerスゴイのがいっぱいいた

0524タイタン(福岡県) [GB]2020/06/07(日) 19:51:02.15ID:38DKjM4G0
>>489
昔は信用できるのは今動いている実行ファイルのみとか言われてたなぁw

0525グリーゼ581c(山梨県) [US]2020/06/07(日) 19:52:27.31ID:oQB1Z8VM0
ttp://bb.watch.impress.co.jp/cda/static/image/2004/11/17/yc01.jpg

0526シリウス(東京都) [US]2020/06/07(日) 19:57:29.97ID:CXP+lh1v0
ソースコードを書くのに80桁も要らんだろ
短い方が読み易い
と元コボラーの私

0527エンケラドゥス(福岡県) [US]2020/06/07(日) 19:59:40.42ID:fm3IXWm50
コボルってやたら冗長だからな

0528トラペジウム(茸) [US]2020/06/07(日) 20:18:12.47ID:IR+LiCXf0
>>526
変数名の命名規則次第

0529ヒドラ(滋賀県) [AT]2020/06/07(日) 20:22:35.54ID:mzRUSbh90
自動車内で寝る、カーネル

0530アルデバラン(東京都) [ニダ]2020/06/07(日) 21:37:54.09ID:ejBAFFtC0
>>520
比較演算子で計算してから結果をIF判定じゃダメなんか?

0531アルビレオ(滋賀県) [SG]2020/06/07(日) 21:39:21.30ID:NmnfzTXI0
コーディング規約ばかりの汎用機時代

0532ウォルフ・ライエ星(大阪府) [GB]2020/06/07(日) 23:28:31.81ID:GnSKjE8n0
>>531
ファイルシステムが階層ディレクトリでなく、データセット名はコンピュータを使ってる
全員で被らないような命名規則を会社で決めて使ってた
「DSN=A1234.T567..ZZZ1」←社員番号A1234番のプロジェクトT567のファイルZZZ1

0533ポルックス(東京都) [US]2020/06/08(月) 03:27:10.77ID:cYS5C26L0
>>519
あんまり自らのバカを晒すなよw
光速なんてならないから
論理値として成立する電圧までの変化はナノセコンドオーダーで必要なんだよね
だから遅延するからタイミングが合わなくなって行くのだよ
変化させる電圧の差を小さくすればそれだけ短時間ですむ事から、今やどんどん低電圧動作するデジタル回路になって来ているのもその辺の理由

0534カストル(兵庫県) [US]2020/06/08(月) 05:41:45.48ID:efJ4D9xq0
>>520
BASICの1行255文字ブロックIFなし制限の中で1行だけのゲームとか作ったなぁ。
あの頃はプログラムを作ることそのものがゲームみたいなもんだった。

0535パラス(ジパング) [US]2020/06/08(月) 09:53:23.76ID:YWXXFdSe0
.netだと80文字なんてあっというまだからなぁ

0536セドナ(大阪府) [US]2020/06/08(月) 10:37:37.81ID:So9A1YBn0
>>535
.netなんてまだいいよ。
flutterでまかり間違って4タブなんて使おうものなら、下手したらソースが画面内に入らず空白だけしか見えないなんて事も。

0537フォボス(福井県) [ヌコ]2020/06/08(月) 11:28:36.11ID:vnm62gnn0
ルネサスの組み込みのサンプルコードなんかも酷いもんだよ

0538アークトゥルス(大阪府) [DE]2020/06/08(月) 12:05:00.31ID:JNSgVNWZ0
そのうちGoogleに口頭で頼んでプログラム作ってもらえるようになるから
専門の言語など不要になるわ

■ このスレッドは過去ログ倉庫に格納されています