-Code_PHPに関するbeatdjamのブックマーク (8)

  • PHPのround関数とは一体なんだったのか - hnwの日記

    (7/3 14:05追記)Javaに関する記述について誤認があったので盛大に書き換えました。Java 6、Java 7、Java 8それぞれで実装が変わっていたようです。 (7/13 23:55追記)記事中ではroundを四捨五入と言い切ってしまっています。これは筆者がC99のroundを基準に考えているためですが、言語によっては偶数丸めになっているround関数も珍しくありません。ご注意ください。 PHPのround関数について、ネット上で次のような記述を見つけました。 PHP 四捨五入の計算を間違える唯一の言語として畏れられていましたが、そのバグは治っているかもしれません(治ってないかもしれません) 主要なプログラミング言語8種をぐったり解説 - 鍋あり谷あり 各言語を面白おかしく紹介する内容とはいえ、ずいぶん雑な理解だなーという印象です。ゆるふわな話だけでPHPがdisられ続けるの

    PHPのround関数とは一体なんだったのか - hnwの日記
  • PHPのmt_rand()にプルリクを送った - kusano_k’s blog

    この話。 PHP の mt_rand() は一貫して壊れている(consistently broken)らしい - 唯物是真 @Scaled_Wurm PHPのmt_rand()が実装にミスがあることを知ったので、「PHPのコミットログに名前を載せるぞ╭( ・ㅂ・)و」と思ってプルリクを送ったら、一旦マージされたけど、リバートされた。 詳細 https://github.com/php/php-src/pull/1681/files ついでにテストコードも付けたけど、直すべきは1文字だけ。 twistというマクロの定義が1文字間違えている。 loBit(u)ではなくloBit(v)が正しい。 #define twist(m,u,v) (m ^ (mixBits(u,v)>>1) ^ ((uint32_t)(-(int32_t)(loBit(u))) & 0x9908b0dfU)) このマク

    PHPのmt_rand()にプルリクを送った - kusano_k’s blog
  • PHP の mt_rand() は一貫して壊れている(consistently broken)らしい - 唯物是真 @Scaled_Wurm

    PHPでMersenne Twister法で擬似乱数を生成する関数のmt_rand()にバグがあり出力がおかしい、という話が流れてきておもしろかったので簡単にまとめておく kusanoさんがmt_rand()の実装に9年以上前から1文字違いでバグがあったことを見つけて、数ヶ月後にマージされる(追記: 正確には、PHP版の実装が他と異なっているのは前から知られていたらしい*1 ) PHPに送った1文字修正するプルリクエストがマージされた🎉 mt_rand()の返す値が元のメルセンヌツイスタと異なっていた。https://t.co/Z5WJhHVyNd— kusanoさん@がんばらない (@kusano_k) February 17, 2016 その後、生成される擬似乱数列が変わってしまうので、後方互換性を壊す変更は議論してからmergeすべきということでrevertされるこの前マージされた

    PHP の mt_rand() は一貫して壊れている(consistently broken)らしい - 唯物是真 @Scaled_Wurm
  • 健全なpixivは健康なPHPに宿る〜モダンPHPを保つ7つの鍵 - pixiv inside [archive]

    ピクシブ株式会社 Advent Calendar 2015の18日めの記事でございます。 qiita.com こんにちは、うさみです。去年のAdventCalendarではEmacsにpixiv-novel-modeを作ったって記事を書きました。趣味はQiitaです。 現在pixiv.netではPHP 7に移行を進めていますが、それに先駆けて、この数年間に実施してきたpixivの改善について紹介いたします。 実際のところ私自身はあまり仕事をしてないので、この記事の内容のほとんどはほかのメンバーの業績チームの成果です p(ixi)v 最初に宣伝をしますが、技術評論社さまのWEB+DB PRESSにて、pixivの開発チームとして「PHP大規模開発入門」を連載しています。この記事でpixivPHP開発に興味が湧きましたら、ぜひ購読していただければ ヾ(〃><)ノ゙☆ 1. デプロイ機能の抜

    健全なpixivは健康なPHPに宿る〜モダンPHPを保つ7つの鍵 - pixiv inside [archive]
  • PHP の GC の話

    第 87 回 PHP 勉強会での発表資料です。PHP の処理系に採用されている参照カウント方式の GC と循環参照を回収するアルゴリズムについて簡単に説明します。また、特定の限られた状況で循環参照の回収が処理速度に悪影響を与えることを、簡単なサンプルプログラムを用いて示します。

    PHP の GC の話
  • PHPを使ったり4000円課金したりしてCEDEC AI CHALLENGE 準優勝に至るまでの軌跡

    by @dekokun on 2014/09/08 00:07 Tagged as: PHP, contest. 概要 日で最大のゲーム開発者向けカンファレンスであるところのCEDECにて、AIのプログラミングコンテストが開かれました。 その名もCEDEC AI CHELLENGE。 そこで、PHPを使って参戦したら見事準優勝したので何を行ったかを書きます なお、この大会はオンラインで行われる予選と、実際にCEDECの会場で行われる選の2段階で行われました。 上記「見事準優勝」等と言っておりますが、予選はともかく選の方はほとんど運によって全てが支配されていたため、準優勝ってなんぼのもんなのかと言われると、「最低限瞬殺されないくらいの強さ」というくらいの話でしかないです。はい。 参加者は、去年は11人だったようですが今年は5倍以上の60人。来年はもっと増えるんですかね。来年も参加したい

    PHPを使ったり4000円課金したりしてCEDEC AI CHALLENGE 準優勝に至るまでの軌跡
    beatdjam
    beatdjam 2015/03/02
    "なお、彼は予選の「最後に提出したAIが採用される」というルールを把握しておらずそんなに強くないAIで戦い死んだ"
  • PHPのイカれたメンバーを紹介するぜ! - Qiita

    公式リファレンス、読んでる? 「関数についてちょっと分からなくなってGoogle先生経由で来るところ」では勿体ない。 暇な時間に適当にリンクを踏んでいると面白いものを見つけることが出来ます。 in_arrayの第三引数であったり、strtrに渡せる配列であったり、その他の基モジュールであったり・・・ 「その他の基モジュール」とは PHP公式リファレンスの果てに広がる闇である。 日はその一部についてご紹介したいと思います。 各タイトルに公式リファレンスへのリンクを用意しておいたので、気になったものはそちらで詳細を確認して下さい。 1. SPL (Standard PHP Library) http://php.net/manual/ja/book.spl.php みんな大好きSPL。 DirectoryIteratorとかすごく便利。 ディレクトリパスをコンストラクタに渡すと、ディレク

    PHPのイカれたメンバーを紹介するぜ! - Qiita
  • PHPはバグレポートがバグッてる。だがそれがいい。 | 高橋文樹.com | プログラミング

    この投稿は 11年半 前に公開されました。いまではもう無効になった内容を含んでいるかもしれないことをご了承ください。 Rubyを書く人の大半はRubyの作者がまつもとひろゆきゆきひろ氏Rubyの人から指摘されましたが、2ちゃんの人と間違えましたであることを知っているでしょうし、Perlを書く人はだいたいラリー・ウォールの名前を知っていると思うのですが、PHPを書く人の大半はPHPの作者がラスマス・ラードフ氏であることを知らないと思います。 これは多分にPHPというのがそれだけ色んな層の人に使われている結果に過ぎないのですが、このラスマスさんの発言はエスプリが効いてて面白いんですね。はてな匿名ダイアリーですが、伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョるなどを参考にしてみてください。PHPは、歯ブラシみたいなものですね。毎日使うものですけど、だから何で

    PHPはバグレポートがバグッてる。だがそれがいい。 | 高橋文樹.com | プログラミング
  • 1