[Haskell-cafe] Programming videogames in haskell

Sean Seefried sean.seefried at gmail.com
Sun Nov 23 23:57:32 UTC 2014


I just updated the wiki [1] with a build script I wrote in Docker [2].

Putting together the build script in Docker was a very pleasant experience.
I broke the script up into many small pieces so that if one particular part
failed I could simply go back to the last checkpoint and start from there.
Once I had finished the script, I also had very high assurance that it
would work with no problems whatsoever when I ran it again from scratch.

Normally putting together build scripts is difficult because of the
inherently stateful nature of a file system. If you are working on a build
script that takes a long time to run the temptation is not to start again
from scratch every time something goes wrong. The turn-around times are
simply too long. You can't be waiting 50 minutes every time you make a
small change. Therein lies madness. But because Docker uses a copy-on-write
filesystem under the hood, the filesystem is really a kind of persistent
data structure. When one particular part of the script failed I was able to
go back to *exactly* the state it was in before it failed. The boon to my
productivity and my sanity was immense.

Sean

[1] https://www.haskell.org/haskellwiki/Android
[2] https://github.com/sseefried/docker-build-ghc-android
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20141123/7eb51190/attachment.html>


More information about the Haskell-Cafe mailing list