パスワードを忘れた? アカウント作成
10791969 story
Facebook

FacebookがPHP互換のプログラミング言語「Hack」を公開 40

ストーリー by hylom
言語を極めると言語自体をハックしたくなる説 部門より
あるAnonymous Coward 曰く、

Facebookは3月20日、PHPをベースに静的な型付けといった機能を組み込んだ新たなプログラミング言語「Hack」をオープンソースで公開した(公式サイトSourceForge.jp Magazine@ITマイナビニュースslashdot)。

Hackは、同社が開発したPHP用JITコンパイラHHVM (HipHop Virtual Machine) 向けのプログラミング言語で、PHPをベースに静的な型付けを加えたうえで、ジェネリクス、Nullable型、型エイリアス化、型安全な配列、ラムダ表現といった機能を盛り込んでいる。非推奨機能などは取り除かれているものの、PHPとは高い互換性があるとのことで、PHPコードの多くはそのままHackコードとして利用できるという。実際に同社ではこの1年で殆どのPHPコードがHackにマイグレーションされたとのこと。

「動的な型付け言語がもたらす開発の手軽さと、静的な型付けがもたらすエラーチェックの完全性の高さなどの双方の利点を得ることを目指している」とあるが、果たして二兎は得られるだろうか?

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • C++, D, C#, Go, ... (スコア:5, すばらしい洞察)

    by Anonymous Coward on 2014年03月27日 21時12分 (#2570389)

    この期に及んでググラビリティ皆無の名前をつけるとか馬鹿なの死ぬの?

    • by miyuri (33181) on 2014年03月27日 21時27分 (#2570400) 日記

      hacklangで良さそうな雰囲気。

      親コメント
    • by Anonymous Coward

      Googleに対抗するためにあえてそういうネーミングを選んだのかも

    • by Anonymous Coward

      "Hack program" とかで検索しても一般名詞のHackを除外できないな
      どうしたらいいんだ?

    • by Anonymous Coward

      せめて"PHP"の文字を残すべきですよね。
      たとえば"PHack"とか...
      urbandictionary.com [urbandictionary.com]参考

      • by Anonymous Coward

        そうすべきでない、つまりPHPと似てると思うと痛い目を見るというくらい違うってことでは?

  • by jizou (5538) on 2014年03月27日 20時38分 (#2570367) 日記

    この言葉に何度だまされたことか....
    #PHPは、殆ど知らないので。

    • Re:殆ど... (スコア:3, おもしろおかしい)

      by Anonymous Coward on 2014年03月27日 21時48分 (#2570410)

      「PHP4.xのコードはPHP5.0でも殆ど問題なく動きます(キリッ)」
      「PHP5.2のコードはPHP5.3でも殆ど問題なく動きます(キリッ)」

      じゃあなんてPHP4やPHP5.2からアップデート出来ずに死んでいったコードがゴロゴロあるんだよ。
      PHP界隈でいう「殆ど問題なく動く」とは、「殆ど全く動かない」と思っておいた方が良い。

      親コメント
      • by Anonymous Coward on 2014年03月27日 21時51分 (#2570414)

        そういうのをスケープコードっていうんだよ。

        親コメント
        • by Anonymous Coward

          コラテラルダメージ (Collateral Damage) っていう映画があったよね。

      • by Anonymous Coward on 2014年03月28日 4時11分 (#2570522)

        PHP5.2のサポートが切れるらしいから5.3へ移行しようとしたものの、データベース周りとか利用してたライブラリとかなんだかんだで難航してとりあえず棚上げになったコードが、もう気づくと5.5の時代になってしまっていてどうしようもなくなっています。もし移行できても、1年もすれば5.6移行の問題が出てくるのは必至で、PHPもうやだという声が聞こえてきます。

        親コメント
    • by x-rebuttal (33869) on 2014年03月28日 0時45分 (#2570477)

      広告「残業は殆どありません」
      現実「残業代は殆ど出ません」

      親コメント
    • by Anonymous Coward

      なんでfではじまらないんだよ解せん f*ck
      goはちゃんとgではじまってるじゃん

  • サンプルコード [facebook.com]にmysql_query()とか書かれている時点で
    不安しか感じないのだが大丈夫なのだろうか。

    • by nyagy (17036) on 2014年03月28日 13時51分 (#2570772)

      mysql_*は非推奨にはなりましたがPHP 5.5.0からですから、対応するかどうかは微妙なラインのような気もします。サポートしないと膨大な量のコードが不動作になってしまって言語の普及が進まないでしょうし。

      親コメント
  • by Anonymous Coward on 2014年03月27日 23時48分 (#2570460)

    は、 Real World Haskell [realworldhaskell.org]著者の Bryan O'Sullivan さんのようですね。
    https://news.ycombinator.com/item?id=7436495 [ycombinator.com]

    • by Anonymous Coward

      そりゃ期待できる。

      Haskell 知らない人のために一応書いておくと、Haskell には型があるんだけど、型宣言してなくてもコンパイラが文脈から型を勝手に推測してくれる。(推測不可の場合、コンパイラエラーになって、ユーザーが型宣言する必要がある)
      あと、指摘された本は Haskell界で超有名(少なくとも自分はそうおもっている)

      • by Anonymous Coward

        あと、指摘された本は Haskell界で超有名(少なくとも自分はそうおもっている)

        なんとも無意味な補強…

        • by Anonymous Coward

          そうか、無意味だったか。

          本がリファレンス並みに使われてる。これ一冊読めたら、相当力がある。
          それぐらいの本を書ける著者だから、相当頭いいし、周辺の事情にも詳しいだろう、的な発想だったんだ。

          • by Anonymous Coward

            いや、カッコ内のことでしょう…

            • by Anonymous Coward

              「あと、この本は超有名だから」ってのも大概でしょう…

              • by Anonymous Coward

                有名だしかつては役に立つよい本だったのだけど、完全に古びてもはやマイナスでしかないから下手に読まないほうがいいよ

    • by Anonymous Coward

      それはそうと、
      タイトルを本文の1行目として扱うのはいかがなものだろうか。

  • by chromoly (46484) on 2014年03月28日 0時28分 (#2570472)

    メソッドの補完が出来る。 ダックタイピングはメソッドから型を逆算するから補完が出来ない。
    まぁ、やろうと思えば出来るんだろうが、型の候補が複数出てくる、
    Hackもdartと同じで実際は動的型付けだが、補完がしやすいよう言語仕様的に型が書けるようになる。

    • by auient (41189) on 2014年03月28日 1時34分 (#2570497) 日記

      IDEなどツールの対応がどうなるか気になります。
      チュートリアルではリアルタイム構文チェックっぽいデモがあるけど、本当に動いているわけではなさそうだし。
      http://hacklang.org/tutorial/ [hacklang.org]

      親コメント
    • by nyagy (17036) on 2014年03月28日 13時59分 (#2570782)

      問題は、多くのPHPプログラマ及びプロジェクトにPHPを導入するPMがそうした利点を理解できるかどうかですかねぇ。理解できていればそもそもPHPを選択しないでしょうし。

      自分の経験した範囲ですが、PHP(しか知らない)プログラマはとにかくエラーが嫌いなように思います。Internal Server Errorで何も表示されないよりも、壊れていてもいいから何か画面が出ていれば安心するというか。なので、静的型チェックを行ってエラーになるよりも、型チェックしなくてログにnoticeを山盛り出していたほうがいいという感じです。なんせ、シンボルチェックすら拒否するような文化ですから。。。

      親コメント
      • by melorec (46666) on 2014年03月28日 20時24分 (#2571084)
        PHPer がエラー嫌いなのは「受注先の顧客がそうだから」という可能性はないのでしょうか?
        つまり、想定外のエラーが起きた時、
        「ブラウザ表示がまっさらなのは安全性を考慮して
        処理を中断させているからです」って言っても顧客は分かってくれないだろうから、
        とにもかくにも、ある程度の見た目だけは取り繕いたいとか。
        特にWebサイト系のお仕事では、そういう傾向が強いんじゃないかと邪推します。
        親コメント
  • by Anonymous Coward on 2014年03月27日 22時37分 (#2570433)

    PHP(とHack)の開発で、いったいどれだけのフレームワークを習得すればいいのか…

    • by Anonymous Coward

      もちろん死ぬまで、日々これ学習と実践ですから。
      それが嫌なら独自フレームワークを構築する道を歩んでもいいし、
      「習得」と無縁なクラス・ジョブにチェンジするのも手。

      というか、習得は嫌だと言いだしたら最後、
      簡単に下の世代(むしろ新しい技術「しか」知らないし、「また」などとは思っていない)と置き換えられてしまいますけどね…。

      プログラマとして生き延びたいなら、いかに自分の学習コストを低く保つかですよ。

      • by Anonymous Coward

        いや、多分言いたいのは多過ぎるフレームワークに辟易としてる現状にまた追加されたことについてだろ
        正直メジャーな?奴だけでも10以上あって良い加減どれかにして欲しいものである…

  • by Anonymous Coward on 2014年03月27日 23時28分 (#2570450)

    jasm.jsとかのほうがよっぽど馬鹿げてるのになぜ問題にしないのか

  • by Anonymous Coward on 2014年03月28日 7時37分 (#2570546)

    デファクトスタンダードとして一定の勢力を持っているから、だから。
    Hackが使い物になるのだとしても、まず普及してもらわないとだな。
    自由に言語を選べるのなら、そもそもPHPは選択しないのだから。

  • by Anonymous Coward on 2014年03月28日 11時17分 (#2570656)

    Q「Hackerになりたいんですがどうすればいいですか?」
    A「プログラミング言語Hackを勉強してください。」

    • by Anonymous Coward

      くそ、Hack で構築したサイトがハッカーに侵入されたぞ!! (そりゃそうだよね的な)
      → マスコミによるよく分からないハッカー叩き
      → Hack 普及しない
      → 桶屋が儲かる

typodupeerror

長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds

読み込み中...