タグ

ブックマーク / repsolfireblade.hatenablog.com (2)

  • 一夜明けて… - れぷそる・ふぁいやぁ・ぶれぇど

    ブログのネタ的には2日前なのだが、書いたのは昨日の話。PHPの三項演算子(a?b:c)が左結合なのは、PHP言語仕様のバグだ、と書いた。一夜明けたらPVがとんでもないことになっていた。TwitterとかFacebookとか、あと、もちろん家「はてな」とか、とにかくそこらじゅうでネタにされている(汗)。それだけ、PHPって流行っている言語で、この問題も注目されているってことなのね。まあ、言語としてPerlよりはマシだと思うね。ってか私Perl嫌いかも?しかしPHPにも型がないところが嫌いなんだけど。JavaScriptの型付きバージョンTypeScriptなんてものあることだし、この際PHPにもHindley-Milnerスタイルの(ML風の)型推論でも入れれば良いのに。この問題も言語に型システムが備わってないからコンパイル時にエラーにならないという遠因もあったんだけどね。 話を戻して、P

    一夜明けて… - れぷそる・ふぁいやぁ・ぶれぇど
    k-holy
    k-holy 2013/02/22
    自分が書いたコードには存在しなくても、他人が書いたコードも同様かどうかは…流行ってる言語だからこそ。あとWebアプリケーションはOS変わっても動いて当然だしライフサイクルも違うかと
  • PHP言語仕様のバグ - れぷそる・ふぁいやぁ・ぶれぇど

    先週の金曜にPHPで作った、UI系のプログラム。あっちこっちデバッグ文ぶち込んでも一向に動かず「衰えたかな?」とか思っていた。いくら考えても「変なところ」は見つからないのに、出てくる結果は確かに変。まさか?と思って、試しにカッコを付けてみたところ動いた。えー、ウソ。当に??で、ググって言語仕様を確認した。当だ。これさあ、PHP言語仕様のバグじゃん。三項演算子(a?b:c)が左結合ってあり得ないよ。基的に元はと言えばC言語をモロにパクって言語仕様決めたんでしょ?だったら、こういうところで、ボケな間違いをかまさないで欲しいよね。C言語の三項演算子は(C++JavaもC#も、あとJavaScriptもみんな一緒だけど)右結合だよ。それが明らかに自然だもん。これを意図的に変えるとは考えられない。ということは、PHP作った人ってバカなの?だから、形式言語ってものをまともに勉強したことのない人

    PHP言語仕様のバグ - れぷそる・ふぁいやぁ・ぶれぇど
    k-holy
    k-holy 2013/02/20
    真性PHPerだけど先入観から罠にはまって以来、重ねないようにしてます。括弧つけても読みやすくなるとは思えないし
  • 1