「Aは有害である」(A considered harmful)というタイトルそれ自体もバズって、「~は有害である」というタイトルの論文が大量に出て来て、やがて「『~は有害である』は有害である」("Considered harmful" considered harmful)という論文まで出て来たらしい。
これが合ってるのかどうか分からないけど、 go to文を使わないようにすると、コードの記述の中にある程度「時間性」を保つことができるから、より人間にとって分かりやすくなったってことなのかな(go to文を使うと「順次」のルールが守れない)。 で、go to文が含まれる一連の処理は、「選択」もしくは「反復」処理になっているから、 go to文を禁止にする→順次、選択、反復の3つのルールを守るってことになってるのか。
30:11 の階層構造の話しに関する例ですけど、構造化プログラミング言語にも最初に階層が曖昧でした。英語でdangling else problemと呼ばれるALGOL言語に起こった問題です。ALGOL以来のプログラミング言語作りに影響される問題です。今のルールはyou should not have an ambiguous grammarみたいで、「ソースコードの捉え方が一つしかない方がいい」といいう意味です。
@user-hp7fd9vr9b
6 ай бұрын
深掘をちゃんと手偏で書いてくれている堀元さんに好感が持てる
@ryojitakei71
Жыл бұрын
MSXでBASICを使って、1行ごとに文頭に適当な行番号(10,20,30,40…)を付けて「120 if A = 0 then goto180 else goto 240」みたいなプログラムを書いていた小学生の僕にダイクストラが「そのやり方めっちゃクソやで」って教えてくれていれば今頃ぼくも立派なプログラマになっていたかも知れません。
Пікірлер: 331