Eric Warmenhoven asked a couple of Haskell questions. Here are my answers.
BTW, do you want to be added to Planet Haskell? If so, drop me an email.
Also, be sure to subscribe to the Haskell mailing lists.
Where did all the shared libraries go? Turning a Haskell module into a static library looks like it’s fairly straightforward, but it looks like it’s impossible to create a shared library that’s usable by other Haskell programs.
See the GHC FAQ.
Why do header files have a bizzare suffix? If module A uses something from module B and module B uses something from module A, there’s a circular dependency that GHC can’t resolve on its own. The solution to this is to create a “boot” copy of module A that defines the things that B depends on without depending on B. In C this is called a header file. In GHC this is called a boot file and is given the extension “.hs-boot”.
There are no header files with Haskell. Or rather, there are (the .hi files), but they are generated by the compiler when compiling the module. The .hs-boot files are not header files but a workaround for GHC’s inability to compile circularly dependent modules (which the language spec requires).
Why does everyone ignore all the practical stuff? I read through five tutorials before I finally found one (on Monads, of all things) that actually had a usable getArgs example.
Perhaps many people consider the practicals easy and want to discuss the hard things instead.
Where’s the Debian-specific documentation? For example, there’s a GTK module. Where is that? How do I get it? Is there a package for it? If not, how do I make one? (I saw the debian haskell mailing list but didn’t feel like wading through the archives hoping that one of my questions might be answered.)
There is no Debian-specific documentation apart from a draft “policy”.
Googling, I found this repository that contains Gtk2HS debs. Haven’t tried them, though.