On Mar 26, 2007, at 11:07 AM, Peter Karman wrote:

I like the current convention of putting XS in with the Perl.

Groovy.

I'm now about to start contributing a bunch of utility stuff that's used by KinoSearch's XS bindings.

Peter... Dave and I have been collaborating fruitfully, but this isn't an area of expertise for him. If I start presenting these tools here and explaining the rationales behind them, are you willing to read the emails and offer critiques/suggestions, or at least nod your head OK? ;) I'm not looking for deep debugging, rather high- level design discussion.

At the least, I'd like to get the thoughts behind this stuff entered into the email record. The material is commented well enough for me to understand what I did six months ago, but XS is so esoteric and as I wrote everything in isolation, I think some aspects might prove difficult for other maintainers to unravel. Forcing myself to justify it would be a good exercise, and if we come up with improvements, more's the better.

The material I'm talking about is most of the content from two files from the KS repository (<http://www.rectangular.com/svn/kinosearch/ trunk/>)...

  $REPOS_ROOT/perl/xshelper/XSHelper.c
  $REPOS_ROOT/perl/xshelper/XSHelper.h

... plus parts of the Module::Build subclass at...

  $REPOS_ROOT/perl/buildlib/Lucy/Build.pm

... particularly the ACTION_write_typemap subroutine.

(Yes, KS svn trunk now has Lucy::Build in it, to aid synchronization.)

Marvin Humphrey
Rectangular Research
http://www.rectangular.com/


Reply via email to