AI::Prolog/AI::Logic to Sourceforge?

Ovid on 2005-02-01T21:53:04

I've been giving a lot of thought to starting a Sourceforge project for my logic programming work. I generally view AI::Prolog as a prototype for AI::Logic. I see parallel projects where the former is a pure Perl implementation for prototyping and testing and the latter is written in Inline::C or XS with the same interface but reasonable performance. However, there are problems with this approach.

First, I'd like help. Collaborating via personal email doesn't work very well for me. Second, others have expressed an interest in helping or learning, but handling this one person at a time is not very effective. I think having a mailing list would help and having a project where people could always check out the latest sources could also be useful. Very few Perl programmers really appreciate the power available here, so I think a coordinated effort to "spread the news" might help.

I'm used to leading stuff like this is a business setting, but in an open-source environment I'm used to working alone or submitting patches. This is a rather new thought to me.


Interfaces

drhyde on 2005-02-02T09:45:21

Can I suggest that rather than calling an XS version something different like AI::Logic, you call it AI::Prolog::XS or AI::Prolog_XS, in the same way that we have Text::CSV and Text::CSV_XS? This makes it much clearer that they have the same API.

As for going to sourceforge, I'd recommend against it. Sourceforge is irritating to use and doesn't really offer anything that you can't do yourself. All that's needed is a mailing list and a public CVS repository.

And good luck recruiting little helpers. The task interests me enough that I've grabbed AI::Prolog and played with it, but my knowledge of Prolog is pretty limited and so I'd not be comfortable hacking on this. I expect that's a very common state of affairs.

Re:Interfaces

Ovid on 2005-02-02T19:41:18

The main problem with calling the XS version AI::Prolog::XS or something similar is that it ties me to Prolog. I want logic programming to be available and while I will always have the Prolog interface avaiable via AI::Prolog (hence the name), I am not sure that I want that always available via AI::Logic. If I want to offer non-standard predicates to AI::Logic or I find that seriously mutating the way the logic engine works will better facilitate the needs of Perl users I don't want the module name to make false implications.

As for Sourceforge, what are decent alternatives? I have no intention of opening up anything on my personal boxes and I don't want to pay for hosting somewhere if I can avoid it. Also, Sourceforge does offer more than just a mailing list and CVS repository (though the latter gives me pause. I much prefer Subversion.) I'm open to alternatives. Other than slow CVS updates, can you offer specific gripes about it? I really don't know anything about Sourceforge.

Re:Interfaces

drhyde on 2005-02-02T20:35:01

Good arguments re module naming, so I'll shut up now ;-)

Sourceforge irritates me as a casual user wanting to grab the code from some random project because the user interface just SUCKS so very very hard. As a programmer, I have another minor gripe mostly related to the amount of abandonware on there.

That said, my objections to Sourceforge mostly go away if you don't want to host your own lists and public repository. It's better than nothing.

GForge

naughton on 2005-02-03T03:37:41

GForge may be a good alternative to Sourceforge. Started by original Sourceforge developer Tim Perdue, it's a fork of the once-open Sourceforge code. It supports Subversion as well as CVS and claims to be much-improved. I haven't used it, but have read positive reviews.

BTW, your posts routinely contain great technical info. Thanks, Ovid!

Re:GForge

Ovid on 2005-02-03T04:09:33

Whoa. That looks interesting. Thanks for the heads up.