><https://twitter.com/orange_in_spacehttps://pawoo.net/@orange_in_space
# define BEGIN {# define END }
どうでもいいけど { ... } はわかりづらいから BEGIN ... END にしたがる人の話を思い出したわ
その「読みづらい」は「視認性が良くない」と「意図を読み取りづらい」が混同されていて、区別するべきだと思いますね
「読みづらくても(コンパイラやテスト環境がしっかりしてれば)何とかなる!」って、それ「読みづらいコードでもコンパイラやテスト環境がしっかりしてれば問題ないので読みづらいコードを書いてもよい」って主張と何が違うのか?><;
開発環境やコンパイラ、と含みを持たせたのは、当然テストを書くだとかなんとかもっと色々やるのがラクな環境があることの含みであって、syntax checker さえあればという話ではない
ifでnotの有無の間違いによるミスってコンパイラが検出できないバグの率高くない?><;
はちゃめちゃに長い operator とかでなければ人類は必ず見間違いや見落しをするので開発環境やコンパイラが適切な指示や指摘をしてくれるならなんだっていい
今日日Notepadでソースコード見ることもないだろうし、小さな記号でも色つけてくれたらいいかな、なんて…
ぐぬぬ><;
そんなクソコードが許されるならand_ and nad _or or and_and and or_ orは読みづらいじゃん……その論法はクソすぎる
わかりやすくするために超極端に言うと、(!illiliilllilli | iilliillili)よりも (not illiliilllilli or iilliillili)のほうが見やすいじゃん!?><;
だからさっきから書いてるように、| とか ! とか記号小さすぎて見間違いとか見落としの危険高いじゃん!?><;
その条件はテキストで書かれるので、メタな意味を持つ and や or や not はテキストで書くより記号で書いてほしいですね。というわけで and / or / not キーワードきらい。
だから言語自作するならどっちでも書ける言語にしたい><
たとえばビットパターン混ぜ混ぜする時とかは「PatternA | PatternB」みたいに書きたいけど、条件とかの時は「条件A | 条件B & 条件C」よりも「条件A or 条件B and 条件C」みたいに予約語方式の方が目に入りやすくて見間違えにくいじゃん?><
こういう問題もあるので「オレンジが言語作るならC一族記号方式(!, | ...)とPascal一族予約語方式(not, or ...)両対応にする!><」って言ってる><
Pascalでif not Hoge thenbeginend;がたとえばC# はif (!Hoge){}じゃん?>< 見落としそうじゃん?><
これ、オレンジは実際にはやってないけどでもDelphiから乗り換えた時にはDelphiというかPascalのnotは ! じゃなくそのまま「not」なので見落とさなかったのが 「! ってそんな小さいのどう考えても見落とすじゃん!?><」ってなったのでわかるしヤバそうな時にそうするのいい感じかも感><
あまりコーディング規約がきちんとしているところで仕事をする機会が無いが、trueの比較でif(bool)はやるけど、falseのときはif(!bool)じゃなくてif(bool == false)と書くようにしている。なんか見落としそうで。!使えと言われたら使うけども。
「(bool型の式) == true」「(bool型の式) == false」
って書き方,なくもないけど少数派な気がするんだよな.
赤を入れるべきかどうするか.
思考の /dev/null