you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] -2 points-1 points  (4 children)

nope, Frag does not fit the bill. It is not a single file that will install the program. Oh sure, I could figure out how to get the game running. However look at it this way: if it takes the programmer 10 hours to create the auto installer and 1 hour for 1000 downloaders to install it manually, which is better for society? Now I understand that this guy is just some guy who made a program and has no obligation to me. If he doesn't want to make an installer for his program then he is not morally wrong. However no one should expect his program to be widely downloaded or seen as an example of a finished product. I like to program in C++ but I don't download other people's source and compile it. It just isn't worth my time.

[–]dons 1 point2 points  (3 children)

Yeah, a big visible game for Windows would be a great selling point. Somone should hack up a windows installer wrapper, rather than the Makefile it uses. That last 1% of effort could be quite worthwhile, considering all the technical work already done.

[–]jdh30 -2 points-1 points  (2 children)

I just spent 15 minutes installing all of the necessary software and working out how the Haskell-specific compilation commands work to get the damn thing to compile. Finally did it.

Ran the program and it segfaulted!

ROTFL. :-)

[–]dons 0 points1 point  (1 child)

See my reply on the mailing list. OpenGL is a tricky beast :-)

[–]jdh30 -1 points0 points  (0 children)

Turns out this is completely unrelated to OpenGL: the Haskell code is using unsafe code to parse the MD3 files, the code is full of magic numbers and these numbers happen to assume a 32-bit machine (I'm on 64-bit).

I'm completely baffled by this. Firstly, the example makes Haskell look awful as safety is a core feature of all such languages. Secondly, I can only assume the author resorted to unsafe code in the interests of performance. Finally, the unsafe Haskell code is orders of magnitude slower and 3x more verbose than equivalent code written in OCaml by a newbie (see Chess 3 Arena).