世紀の傑作ゴミプログラミング言語

この世のプログラミング言語の悪い部分を全て集めたらどうなるか。
19
前へ 1 ・・ 3 4 次へ
yoh2 @yoh2_sdj

昔のFORTRANといえば変数名に空白を入れられる(最終的に無視される)仕様でしょ。 DO I=1,10 をtypoして DO I=1.10 としたために10回ループが変数DOIへの1.10を代入に化けるという伝説のバグ。

2018-03-26 21:43:22
yoh2 @yoh2_sdj

間違えた。 DO 5 I=1,10 と DO 5 I=1.10 だ。 んで、暗黙の変数定義の仕様や、DOとCONTINUEが厳密に組みになっている必要のない仕様からこれのコンパイルが通ってしまうという恐ろしさ。

2018-03-26 21:49:56
🦝❄いなむのみたまのかみ🦊🌸 @mitama_rs

そもそも知らない人が多いと思うが ・1行は80文字 ・7桁目から本文を書く 三種類のGOTO文 ・単純GOTO文 ・算術型GOTO文 ・割当て型GOTO文 とかそういう時代も存在した Fortran66ってやつなんだけど

2018-03-26 20:41:33
画力・博士号・油田 @bd_gfngfn

計算機言語の “やっちゃった性質” の話に関しては,TeX言語がサイキョウすぎる

2018-03-26 20:59:48
画力・博士号・油田 @bd_gfngfn

* 抽象構文木という概念が実質ない * 前方の “評価結果” が後方の “字句解析” に影響する の2点だけで単独首位が確定している気しかしない

2018-03-26 21:19:20
画力・博士号・油田 @bd_gfngfn

あと * 作者ご自身はそれに対して “やっちゃった性質” だという認識をお持ちではなさそう というのもポイントが高い

2018-03-26 21:22:21
yoh2 @yoh2_sdj

戻り値を使っていれば判定、使っていなければ空にするという仕様とか面白そう。 twitter.com/hsjoihs/status…

2018-03-26 20:44:40
hsjoihs (はすじょい) @hsjoihs

空かどうかを判定するempty()関数と、空にするempty()関数も用意しよう twitter.com/yoh2_sdj/statu…

2018-03-26 20:39:38
taskie @t_skie

配列型の要素が1つだけしかない場合単数型への自動的な型変換が起きる (PowerShell) まだ出てなさそう

2018-03-26 21:09:14
ざぎん 𒎎𒍝𒆳@C102 2日目東ペ-22a @na4zagin3

APL の配列の 1 オリジンと 0 オリジンを動的に切り替えられる機能とか(⎕io に 0 を代入すると 0 オリジンになる)

2018-03-26 21:08:57
Furutsuki @theoremoon

引数なしの関数・メソッド呼び出しの()は省略できる

2018-03-26 21:39:42
くりんぺっと @climpet

@qnighy 多分他のくそアイデアと被ることはないと思うので、再帰関数禁止 (FORTRAN) とかどうでしょう

2018-03-26 21:11:13
Masaki Hara @qnighy

@climpet いいですね。ただ落とし穴には分類されなさそうです

2018-03-26 21:13:42
shibh308 @shibh308

PHPの「falseをタイポしてfasleと書いたら文字列として認識してtrueになる」をもっと酷くした感じでオナシャス

2018-03-26 21:38:35
でこれき @dico_leque

Meyer先生「統一的参照の原則!」(ガタガタッ en.wikipedia.org/wiki/Uniform_a…

2018-03-26 21:44:58
でこれき @dico_leque

shのword splittingもsh内では必要、かつ罠があるけど他の言語に入れるには癖が強い

2018-03-26 21:39:10
🍲 @_nabbe

「スレッドレベルのロックがプロセスアンセーフ」というやつがあったな

2018-03-26 20:48:07
takeg @takeg2017

@qnighy @tanakh ==と===を分けて、break必須のswitch case文も入れて、int * a,b;でbはint型にして、ヘッダと実装分けてインクルードガードを必須にして、pragma onceは実装しないでください。

2018-03-26 21:03:27
Masaki Hara @qnighy

@takeg2017 switchのfallthroughは真っ先に思い出すべきでしたね。ありがとうございます。

2018-03-26 22:06:18
そすうぽよ @_primenumber

@qnighy スペース区切りが乗算扱いになる

2018-03-26 20:57:04
Hideyuki Tanaka @tanakh

Pythonで > a = [[0]*3]*3 > a[0][0] = 1 が > [[1,0,0],[0,0,0],[0,0,0]] でも > [[1,1,1],[1,1,1],[1,1,1]] でもなく、 > [[1,0,0],[1,0,0],[1,0,0]] になるのは最高にクッソって感じはする。

2018-03-26 21:22:45
Ryusei @mandel59

今のコンピュータの性能を基準に考えたら構文解析と意味解釈が独立してても問題ないのはあるけど、当時の状況はどうだったのかってのはあるよね

2018-03-26 22:04:09
でこれき @dico_leque

そういえばSchemeは等価比較がeq?とeqv?とequal?と=とstring=?と……とあってわかりにくいと言われたのを思い出した(#f が返る可能性があるのをstring=?で比較して怒られたりしつつ

2018-03-26 22:12:05
きしもと @ksmakoto

(昔の)Javaでは、double-checked locking という小ワザがうまくいかないことがありうる、という仕様だった cs.umd.edu/~pugh/java/mem… というのも嫌な実装というか仕様の例だなそういえば

2018-03-26 22:11:04
mkszk @m_k_szk

FORTH、言語仕様が独特すぎるので他の言語と混ぜた瞬間に毒物に化けると思う。

2018-03-26 22:13:49
前へ 1 ・・ 3 4 次へ