【Haskell】敵を踏み潰したりするゲームを作ってみた

2008-10-05

中途半端だけど、現状の動画をupしますた。

Haskellで敵を踏み潰したりするゲームを作ってみた - ニコニコ動画 ソースは monao に置いてあります。

  • 現状 22ソース、1605行
  • 「関数型言語」って身構えることは全然なくて、Cとかで組むのとあまり変わらないよ、っていうかよっぽど楽だよ(パフォーマンスの細かな調整を考えなくてよければ)
  • 存在型でオブジェクトごとにソースを分けたので、敵やエフェクトなどがかなり書きやすくなった
  • Haskellでソースの循環 import ができない
  • 結構作り散らせる、引数や型の内容を変更すると関連する部分のエラーを全てコンパイラが見つけてくれるので、かなり楽。修正すれば型に関する実行時エラーは起きないので気分的にも超楽。たまにコンパイルエラーのメッセージがえらいことになって大変なことがあるけど。
  • ファイル分けて別モジュールにして、必要な関数だけ import するのがわかりやすくてよい
  • 効果音を鳴らしたいけど HSDL、というより SDL のオーディオの使い方がよくわかってない。自分で mix しないといけないってことかね?
  • Monao いいネーミング!でも遅延ストリームを使っていて、実はそれほどモナドを酷使してないです
  • しかし作れば作るほど、オリジナルがいかによくできてるかがわかる。こんなのを20年前に8ビットのアセンブラで作っちゃう奴ってなんなの?天才なの?
  • 次は FFI で DirectX を触って 3D ゲームを作る、とかしてみたい