Forwarding since [email protected] does not allow non-members to send mail.
David (Mertens) On Sun, Oct 7, 2012 at 9:27 PM, David Oswald <[email protected]> wrote: > On Sun, Oct 7, 2012 at 6:30 PM, David Mertens <[email protected]> > wrote: >> BTW, another person who has plenty of experience interfacing Perl and >> C++ is David Oswald, the current maintainer of Inline::CPP. He's done >> some fantastic work lately on Inline::CPP (dusting off a pretty old >> module and bringing it into the modern era) so he may have encountered >> some corners that you find yourself in. >> >> David > > I'm going to take a look at this, and will let you know if Inline::CPP > looks like a reasonable fit. I have no experience with PDL, but as > David mentioned, I've had a healthy dose of Inline::CPP. The best > case scenario is that the AUTO_WRAP feature will do all the dirty > work. The worst case, I wouldn't want to think about. Most likely > the reality will fall somewhere between those two points. :) > > Dave > > >> >> On Sun, Oct 7, 2012 at 8:27 PM, David Mertens <[email protected]> >> wrote: >>> Christian - >>> >>> I'm sorry nobody has responded sooner to your query, but it's a pretty >>> tough question, so I'm not terribly surprised. :-) >>> >>> For anybody else following along, the shogun project Christian refers >>> to is the Shogun Machine Learning Toolbox: >>> http://www.shogun-toolbox.org/doc/en/current/index.html. SHOGUN >>> supports multiple languages: "SHOGUN is implemented in C++ and >>> interfaces to Matlab(tm), R, Octave and Python." And Lua, btw. >>> >>> Having scanned the docs briefly (especially the developer tutorial: >>> http://www.shogun-toolbox.org/doc/en/current/developer_tutorial.html), >>> I think that the best route would be to create Perl wrappers for the >>> Shogun classes. The Wx folks have extensive experience doing this. You >>> should start by looking at http://p3rl.org/ExtUtils::XSpp, and then >>> possibly hopping on the Wx and/or Padre mailing lists or IRC channels. >>> >>> Then, you would want some way to interface PDL data with SHOGUN >>> SGMatrix objects. There are a few options here. (1) Create a function >>> that copies from one to the other and back. (2) Create a handful of >>> PDL wrappers of SGMatrix classes, which requires a little bit of PDL >>> (black?) magic, but not much. I could probably point you to useful >>> code in this respect. (3) Create a set of C++ classes that know how to >>> wrap PDL data in a form derived from SGMatrix. The main drawback here >>> is that you would then have to properly handle slices, which is why I >>> would prefer the second idea to this third one. >>> >>> A bystander might ask: why not just wrap SHOGUN's methods into PDL >>> routines? Well, SHOGUN uses C++'s object orientation pretty >>> extensively, so trying to wrap the SHOGUN methods into PDL methods >>> would be very difficult, and very much exploratory. There's a lot of >>> meta-information that you'd have to slog around, and keeping track of >>> it all---while doable using the header hash, maybe---would likely be a >>> suboptimal solution. >>> >>> So, I propose you aim to create a Perl wrapper for project. Talk to >>> the Wx people and get their advice. Once that's working, you can >>> quickly hack together a means to copy data between PDL and SHOGUN, and >>> then aim for a PDL-side wrapper of the SHOGUN data types. >>> >>> David >>> >>> On Fri, Oct 5, 2012 at 4:41 AM, Christian Montanari >>> <[email protected]> wrote: >>>> Hi, >>>> I am attempting to tie the "shogun" package to PDL. >>>> "shogun" has already many classes used in PDL, mainly of course, data >>>> formats, but also IO classes, so those packages are a tat similare. >>>> however PDL is for data parsing, while "shogun" is more for developing >>>> algorithms using data. >>>> >>>> so far I managed a rough interface (it links!), but I am still not >>>> very confident in the inner guts of the wrappers. >>>> >>>> I am looking for advices or support from a PDL experts but >>>> particularely nice source code examples for specific usage. >>>> >>>> I found somewhat the pdl-api is missing a few goodies and I would not >>>> mind any expert in the art of PDL show some example of use of...: >>>> >>>> - affine functions used for parsing PDL structures? >>>> >>>> - pdl-api for inline operations >>>> >>>> - strings , storage or RV referenced perl-objects in pdl ? >>>> >>>> - pdl-api for slices ? >>>> >>>> - best use of the "threading" >>>> >>>> - relations beetween pdl data, datasv , sv, hdrsv. >>>> >>>> - sparse format (sparse vector, matrix, n-gram...) (ie: map/hash (or tie) >>>> of arrays index/ranges >>>> to pdl.data ) >>>> >>>> - sub - pdl organisation ? >>>> >>>> I have somewhat partial answers to a few of those, but might not be >>>> the best and the pretiest! >>>> >>>> also I have two ways to embed te packages: do I wrap PDL into "shogun" or >>>> vice versa? (the first I am using a "swig - perl" wrapper, but for the >>>> other I suppose one has to use the wonderfull .PL mechanisme!) >>>> >>>> please, if you are interrested to develop a wrapper likewise, I am >>>> happy to send you my 'git' project, or please share your examples.... >>>> >>>> Thanks for your time. >>>> >>>> -- >>>> ------------------------------------------------------- >>>> Dr. Christian Montanari, Consulting Engineer, Hillebrand Consulting >>>> Engineers GmbH >>>> skype: cp.montanari >>>> >>>> >>>> >>>> _______________________________________________ >>>> Perldl mailing list >>>> [email protected] >>>> http://mailman.jach.hawaii.edu/mailman/listinfo/perldl >>> >>> >>> >>> -- >>> "Debugging is twice as hard as writing the code in the first place. >>> Therefore, if you write the code as cleverly as possible, you are, >>> by definition, not smart enough to debug it." -- Brian Kernighan >> >> >> >> -- >> "Debugging is twice as hard as writing the code in the first place. >> Therefore, if you write the code as cleverly as possible, you are, >> by definition, not smart enough to debug it." -- Brian Kernighan > > > > -- > > David Oswald > [email protected] _______________________________________________ Perldl mailing list [email protected] http://mailman.jach.hawaii.edu/mailman/listinfo/perldl
