23

私はゲームルールのロジックが非常に複雑になるはずだと認識していたので、ゲームフィールドで非典型的な言語をゲーム内のロジックスクリプト言語として使用することを検討しています。ゲーム内スクリプトの理由は、少ないコードで複雑なロジックを表現するためです。非常によく抽象化された言語が必要です。ゲームのようなソフトリアルタイムアプリケーションのHaskellのGCパフォーマンスはどうですか?

しかし、ほとんどの抽象的な言語ではGCが使用されています。通常、GCはCPUのバースト・ロードを行います。基本的には、メモリ操作をクリアしてすぐに実行します。ゲームやGUIを含むリアルタイムグラフィックスにとって非常に重要です。

AFAIK、HaskellのGCは、他のGCベースの言語とは少し異なりますが、それは不変の属性のためです。想像するのは難しいです。私はこれを詳細に見つけることができませんでした。

何が違うのですか?そして、それは長時間実行しているプログラムのためにCPUバーストフリーですか?あなたがここにルーク・パーマーによって開始されたスレッドを見てみたいことがあり(も時間をかけて負荷を分散し、手動で完全なGCコマンドは、各目盛りのために呼び出すことができます)

+0

も参照してください。http://stackoverflow.com/questions/1263711/using-haskell-for-sizable-real-time-systems-how-if –

答えて

6
+2

リンクshoudは実際にhttp://www.haskell.org/ pipermail/haskell-cafe/2010-February/073881.html - pipemailは、特定のスレッドに視覚的にマークを付けることができません。 – 9000

+1

またはhttp://thread.gmane.org/gmane.comp.lang.haskell.cafe/70910 –

+0

ありがとうございました。会話は楽観的な意見を得るのに役立った。しかし、私はデータを承認することの欠如を感じる...おそらくまだ検証可能なアプリケーション。 – Eonil

4

あなたはGHCの移動についてthis blog post by Simon Marlowに興味がある可能性がありストップ・ザ・ワールドのコレクションから、ゲームなどのソフトリアルタイムアプリケーションに適した休止時間と並行して、

私はGHCのレイテンシプロファイルを自分でベンチマークしていませんが、私が理解しているように、0.0007msの休止時間は小さく見えるかもしれませんが、それらはそのおもちゃのタックオフプログラムのために非常に小さいヒープサイズに比例しますヒープと休止時間はそれよりもはるかに大きくなります。

+0

ありがとうございます。私は巨大な記憶を消費するパイロットプログラムを作ることにしました:) – Eonil

+0

その運動の結果は何でしたか? –

4

あなたは、商業ハスケルゲームNikki and the Robotsに興味があるかもしれません。 2011 by Joyride Labs。

enter image description here

彼らは、ガベージコレクタを有する任意のトラブルを抱えているように見えません。

関連する問題