FFI

FFI (その6)

ついにこの連載(?)も6回目になった。 6回目ということは6日目ということで、 もうかれこれ一週間もFFI漬けだということなのだが。 昨日の終わりからどばーっとコード書いて、 どばーっとMakefileの勉強して、どばーっとHaddockで ドキュメント作ってwxHaskel…

FFI (その5)

Audio周りを実装。 今回も考えるところが多くて大変。 とりあえずミキサーをどうするかということなのだが、 やっぱりこれもHaskell側で書くことにした。 コールバックはもともとの仕様と同じ Ptr() -> Ptr Word8 -> Int -> IO () な関数で受け取り、Haskell…

FFI (その4)

こっちも作り始めて3日目、そろそろ形になりつつある。 今日はEvent周りを作ったのであと大きな課題はAudioぐらいか。 Audioもパフォーマンスを考えなかったらミックスルーチンを 適当にHaskellで書くだけなのだが… それにしてもEvent周りは大変だった。 何…

FFI (その3)

前回までで大体FFIの方法がわかったので、 とりあえずVideoのラッパを作成した。 本当にうすうすなラッパなんだけど… しかし、ポインタのやり取りが多いのでどうすればいいのか結構悩んだ。 結局Surface以外はStorableなデータとしてあらわすことにした。 Fo…

FFI (その2)

前回の続き。 今日はコードがひときわ多い。 CからHaskellは呼び出せたので、 今度はHaskellからCコードを呼び出してみようと思う。 …しっかし、マニュアルが全然読めない。英語なので… どうでもいいがForeignモジュールはHaskellの暗黒方面っぽい。 メモリ…

Foreign function interface (FFI)

昨日適当なテトリスが出来上がったけど、 まだまだHaskellネタが続くのです。 現時点であと二つほどは書きたいネタがあったりする。 Haskell上でのゲームプログラミングの方法論、 端的に言うとエレガントさの追求はまた今度。 とりあえず昨日までwxHaskell…