[Haskell] Announce: hback - dual n-back memory game (0.0.2)

Norbert Wojtowicz wojtowicz.norbert at gmail.com
Tue Jun 3 15:42:17 EDT 2008


I've been busy with school the last few days. There are some issues
with the current release that have surfaced after the release:

1. Yes, this is meant to be a proper implementation as based on the
paper. No, it's not quite there yet. Joseph emailed me off-list and
pointed out where the program strays from the paper (both in stimuli
presentation and score algorithms). Do be sure these changes will be
incorporated into the next release.

2. hback v 0.0.1 used Neil Mitchell's idea and then something went
wrong with the second release and my darcs repo. :) There were other
issues with the cabal setup (eg. the mentioned dependency issues).
Overall, I'm afraid 0.0.2 version was just a shoddy release and
totally my fault. I intend to right these wrongs with the next release
and can only hope that I haven't scared away future users. ;-)

3. One issue is the  choosing algorithm, which is now just blatantly
wrong. I've attached a patch I made: if you actually use this app
as-is, you will definitely want to apply it to get a - playable -
version of the game (it now correctly keeps track of scoring, etc).
The next release will offer a different choice and scoring algorithm
based on the paper proper.

I really did enjoy playing with gtk2hs to get this working, it's a
really nice toolkit. Only two issues I have not yet resolved are the
cross-platform sound dependencies (looking into SDL bindings) and the
timer hack. I call it a timer hack because of this layout:

main = do
  ...
  tmHandle <- timeoutAdd( newGame ... ) 500

newGame = do
  ...
  when ( finished_with_current_game)
     ( tmHandle <- timeoutAdd ( newGame ... ) 500
       return False)

so, basically the timer needs to initiate the next game, because once
you start the timeouts, all you can do is eventually kill it. It would
be nicer if I could poll the tmHandle and in case it finished, start a
new game (that way the main could control future games, not the timer
itself).

All things considered, my public release was just a little premature.
Due to school, my time is a little stretched at the moment, but do
expect the next release to be a cleaner version of this one that
follows the Paper protocol and builds correctly. :-)

Thanks for the feedback,
Norbert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.1
Type: application/octet-stream
Size: 4281 bytes
Desc: not available
Url : http://www.haskell.org/pipermail/haskell/attachments/20080603/6abd0352/patch.obj


More information about the Haskell mailing list