
Greetings, I'm looking for some help on the library infrastructure project. The project and its goals are explained here: http://www.haskell.org/libraryInfrastructure/ And the code is here: http://www.haskell.org/libraryInfrastructure/code.html In brief, the Library Infrastructure Project is an effort to provide a framework for developers to more effectively contribute their software to the Haskell community. I'm hoping to not have to implement this entire proposal myself, and I'm very flexible about implementation details. I've made some concrete progress, and I just mirrored my code repository on my web site, so now is the time to get involved! Specifically, at the moment, I want a couple of things: 1) A version parser. I implemented a parser which parses versions that are made of dates, or simple numeric versions. I'd like it to do more kinds of versions, though. Distribution.Version is attached. What is this version stuff used for? Well for one thing, you can use it to say something like: ./haskell-config --user list "MyPackage>1.2" where "MyPackage" is the name of a package. This will list all of the user-installed packages whose versions are greater than 1.2. If you look at the HUnit tests at the bottom of the attached file, you'll get a good idea of what it does right now. It uses Parsec. BTW, I understand that the Debian project has some standard version number parser which might give you some ideas. 2) I also would like someone to help out with the package configuration file IO. Right now, it uses HaXmL, with no generated code. Someone who has seen HaXmL before could give me advice about how my code could be better, submit patches, or rewrite it. As discussed on libraries@haskell.org, I'm open to not using XML if someone wants to redo what I've got there (not a huge task). This parsing code is in Distribution.Package. I do want something more flexible than straight-up read/show. 3) Someone to make it work with in nhc & hugs. The HaXmL page says that it doesn't work w/ Hugs yet (can anyone tell me why?), so that's one step. Also, at least for the version of NHC I have on my system, Parsec is different. So maybe we have to move away from Parsec, or maybe a different version thereof? It is absolutely vital for this project to be completely cross-platform and cross-compiler, so if we have to avoid depending on such things, I'm very willing to change. 4) Someone to make it work with Windows. Avoid using a filename that's called "Aux" ;) ABOUT THE CODE: It only works with GHC at the moment (see above) :( Right now what I've got is a first stab at Distribution.Package and haskell-config as explained in the proposal [1], though some things may have changed. It's hosted with Arch[2], a newish version control system. You can branch my code on your own machine and submit patches. Arch has some tools to help with patches. I've also provided a tarball. Arch is cool, though. You should try it. The HUnit tests in some of the modules should be pretty illuminating. The interactive help for haskell-config is pretty OK. Get the code here: http://www.haskell.org/libraryInfrastructure/code.html peace, isaac [1] http://www.haskell.org/libraryInfrastructure/proposal/index.html [2] http://regexps.srparish.net/www/

I'm looking into testing the Library infrastructure software under Windows (initially using GHC), but am running into a hurdle regarding HaXml. As far as I can tell, there is no script for building a Windows version of HaXml. Looking at the HaXml kit it looks as if the easiest way to try and to this will be to find a suitable version of make (i.e. compatible with whatever is used to build the HaXml package), and use that in conjunction with the Makefiles supplied. Can anyone point me at a suitable version of make to run on Windows (2K/XP)? An alternative possibility might be to use GHC --make, but I'm not sufficiently familiar with the GHC package framework or the HaXml build structure to know if this is possible. The HaXml release notes suggest it is, but I don't see how to do it. Does anyone have any other suggestions? #g -- BTW, I'm working with: - GHC 6.2 - HaXML 1.10 ------------ Graham Klyne For email: http://www.ninebynine.org/#Contact
participants (2)
-
Graham Klyne
-
Isaac Jones