2016年4月13日のブックマーク (5件)

  • JavaScriptユーザのための関数型プログラミング(後編) | POSTD

    この記事の前編はこちら: JavaScriptユーザのための関数型プログラミング(前編) 遅延評価 遅延評価 は、 サンク や ジェネレータ などのもっと具体的な概念をカバーする一般的な用語の一種です。遅延評価は、その言葉が表すとおりのことを行います。つまり、値が必要になるまで評価しません。可能な限りずるずると、先延ばしにします。例えば、洗わなければならない器が大量に、もしかすると無限にあるとします。器を全て流しに置いて一度に洗うのではなく、ゆっくり、一度に1つずつ取って洗うのに似ています。 遅延評価の質を少しでも理解しやすくするために、Haskellを使って説明したいと思います。まず、 プログラムがどのように評価を行うか を理解する必要があります。皆さんが慣れているほとんど全ての言語は、 最内簡約 を用いています。最内簡約とは、次のようなものです。

    JavaScriptユーザのための関数型プログラミング(後編) | POSTD
  • JavaScriptユーザのための関数型プログラミング(前編) | POSTD

    私が関数型プログラミングについて度々耳にするようになったのは、数カ月前からです。でも当時は、それが何なのか見当もつかず、単なるバズワードだと思っていました。皆さんの中にも、そのような方は多いでしょう。それ以来、私は関数型プログラミングについて深く学び、この言葉を日々聞いてはいるものの内容を理解していない初心者の方のために、分かりやすく説明しようと思い立ちました。 関数型プログラミング言語の話になると、「 Haskell と Lisp は どちらが優れているのか 」という 議論 が 白熱する 傾向にあります。HaskellとLispはどちらも関数型言語ですが、実際には大きな違いがあって、それぞれに長所と短所があります。その具体的な内容については、この記事を読み終える頃には深く理解していただけると思います。この2つの言語には、それぞれから派生した言語があります。その中で恐らく皆さんが耳にしたこ

    JavaScriptユーザのための関数型プログラミング(前編) | POSTD
  • 弾幕ローグライクシューティング『Enter the Gungeon』プレイレポ―高難度を潜り抜け過去を変えろ | Game*Spark - 国内・海外ゲーム情報サイト

    Devolver Digitalより2016年4月5日にPC/Mac/Linux向けにリリースされたローグライクアクションシューティング『Enter the Gungeon』。独特の雰囲気を持つ格派アクションである作のプレイレポをお届けします。 ■過去を変えるためにガンジョンを駆け抜けろ! 毎回状態は1から、マップは自動生成、というローグライクな2D全方位アクションシューティングである作。舞台となるのはダンジョンならぬ“ガンジョン”。ある日天から降ってきた巨大な弾丸によって大きく形を変えてしまった砦です。その最奥にあるとされる「過去を始末できる銃」を求めて、プレイヤーキャラクターたちは毎回形を変える危険な迷宮へと幾度と無く挑むこととなります。ゲーム内単語も“ガンデッド”や“アモレット(アミュレット)”“チェンバー(階層)”など銃にまつわる雰囲気にされており、独特な雰囲気を作り上げてい

    弾幕ローグライクシューティング『Enter the Gungeon』プレイレポ―高難度を潜り抜け過去を変えろ | Game*Spark - 国内・海外ゲーム情報サイト
  • 海産物が光線を放つ国産オープンワールドTPS『ACE OF SEAFOOD』世界へ | インサイド

    PLAYISMは、オープンワールド海産物シューティング『ACE OF SEAFOOD』をSTEAMにて配信開始しています。 『甲殻王 -ネオアクアリウム-』を開発した日個人開発者“nusso”氏が開発した、広大な海を舞台とするオープンワードのサードパーソンアクションシューティングゲーム『ACE OF SEAFOOD』。作はSTEAM及びPLAYISMサイトにて、全世界に向けて配信中です。 作の海に暮らす生物は皆、射撃能力を持っており、強力な光線であらゆるものを破壊することができます。魚や蟹で最大6体のパーティを編成し、「敵を倒し」「仲間を集め」「己を鍛え」「魚礁を確保」して、海中を探索しながら他の様々な生物と闘い戦力を拡大していきましょう。 魚礁の多くはそこを縄張りとする生物が護っており、戦闘を仕掛け、勝利することで利用可能に。勝利を重ねることでより強くなった群れで、より広い領域へ

    海産物が光線を放つ国産オープンワールドTPS『ACE OF SEAFOOD』世界へ | インサイド
  • Javaの謎のパフォーマンス劣化現象との戦い - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。アプリケーション基盤チームの横田です。 Javaの謎のパフォーマンス劣化にまつわる調査をしていたのですが、1ヶ月の苦労の末に原因がわかりましたので、報告させていただきます! 公開後に頂いたはてなブックマークでのご指摘・社内でのタイポ・読みにくいなどの指摘を受けてたので、謹んで修正させいただきます。 修正した内容につきましては、記事の最後を参照してください。 忙しい人のためのまとめ jdk-7u4以降のjdk-7 *1 でJavaのパフォーマンスが劣化する謎の現象 CodeCacheの容量限界に近づくとJITコンパイラを停止してコンパイルしたコードを捨てる機能が原因だった 起動オプションで回避できるので、長期運用するときは -XX:-UseCodeCacheFlushing, -XX:ReservedCodeCacheSize=128m をつける 上のオプションを設定した時に、C

    Javaの謎のパフォーマンス劣化現象との戦い - Cybozu Inside Out | サイボウズエンジニアのブログ