
For a file manager (btw, I've found standard Haskell file access functionality very limited, but GHC's should be a lot more practical), you'll want 2d representations, orthogonal projections, and well-antialiased bitmapped fonts, so your requirements differ from mine - HOpenGL is a wide playing field!-) But GLUT's bitmapped fonts might be an acceptable starting point (just), and are just as easy to use as its stroked fonts.
I really want to use one of the binding to freetype. My goal is to write a file manager (and then a panel, and a desktop manager) which is fast to develop, and looks nice. I mean: to have the feel of all 2d f.m., but to have 3d enhancements, like transparency, animations and so on; using haskell could allow user-supplied code to be compiled at startup and to be safe (I could limit user code to a monad with few operations, which can't do IO for example). So, I need opengl to render everything and maybe my project will become some form of "cool widget set" itself. For now, it's just an idea, nothing more. And I think that any amatorial plan needs to have functionalities "on demand": I start writing a file manager, and implement everything related, avoiding to bother of anything else. I'm not sure I will succeed, yes, but I want to try.
Here are some relevant links
http://homepages.paradise.net.nz/henryj/code/index.html#FTGL http://oglft.sourceforge.net/
I've seen that oglft needs qt (which is not GPL on all platforms) to be able to use unicode. It's a trouble. And FTGL does not mention unicode, I 'm going to download it, surely.
Bindings to one of the latter two would be really nice, but they also seem to add new dependencies (on the libraries themselves, and on the FreeType software they build on..).
I don't think it's a problem. Reuse adds dependencies, but simplifies coding.
Is this a good moment, or should I wait for FFI?
If we believe the marketing hype, ghc-5.04.1 will have what it takes, and the FFI spec is stable (they say..).
Yes, but (as far as I know) ghc's FFI is not implemented in other haskell systems (or am I wrong?). I mean, is there a standardized way to call foreign code? Am I wrong? Thanks for your explanations of the GLUT font system... it's better now ;) I didn't understand that rendering a character implicitly uses "GLtranslate" so I didn't "pushMatrix" and "popMatrix"... it's really better now :) Vincenzo