Are you trying it on Linux?
I had exactly the same problem. I believe it's with with X11/OpenGL.
I've written C programs using GLUT, freeGLUT and GLFW (another OpenGL
Window Kit) to re-open window after first one is closed. Unfortunately
all gave the same fault. So it leads me to believe the
Unfortunately whilst the new code is returning me to a 'Main ' prompt
as required another problem has come up.
The issue here is found when the code is executed in both GHCi (6.6)
and hugs (20050308).
Once the code below is loaded evaluating main opens an unfilled window
as required.
However if
in old glut, the main loop was the core of the single threaded program. exiting
it did mean to exit the program completely.
in freeglut, you have alternatives. but for compatibility, it defaults to the
old behaviour.