Lazyness / Efficiency

Hi,

First of all, thanks for sharing your haskell GB emulator project. It's really interesting since it's a kind of "low level project", and making it run well with haskell would be really interesting.

I read your haskell code and saw that it used a huge amount of memory, probably due to an eccessive use of lazyness. I was able to reduce the amount of memory used, but wasn't able to understand exactly where things SHOULD be lazy, and where they should be strict. I think that you know this code better than me and you would be able to make it run at an acceptable speed.

If you can do so, then I would be really happy to implement missing irq, instructions, etc., so that it can run more roms and be usable as an alternative to other emultors.

But I can understand that maybe you haven't enought time to do all this work.

Anyway, thanks for sharing the omegagb project with us :)

Regards,