<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
</style>
</head>
<body class='hmmessage'>
I spoke with Damian Eads and he offers to give us an expanded version<BR>
of his SciPy 08 talk for Pyrex/ctypes/SWIG for satellite image analysis for<BR>
nuclear non-proliferation [link below]<BR>
Not sure if Nathan or anyone else wanted to do a newbie nugget on this<BR>
same topic that nght - could be good, I would encourage Nathan to.<BR>
&nbsp;<BR>
Jim or someone - can you mail out the list of our scheduled meeting dates for<BR>
Feb-Mar-Apr at the new Symantec Mtn View location?<BR>
&nbsp;<BR>
Damian is based in New Mexico so let's see what fits his schedule.<BR><BR>
Regards,<BR>
Stephen<BR><BR>

<HR id=stopSpelling>
<BR>
From: spmcinerney@hotmail.com<BR>To: baypiggies@python.org<BR>Date: Mon, 29 Dec 2008 20:20:01 -0800<BR>CC: damian.eads@gmail.com<BR>Subject: Re: [Baypiggies] Opinions on Pyrex vs. ctypes vs. SWIG and whatever else binds to dynamic/shared libs<BR><BR>
<STYLE>
.ExternalClass .EC_hmmessage P
{padding:0px;}
.ExternalClass body.EC_hmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
<BR>The "which wrapper to use?" design question was in fact one of the topics<BR>of Damian Eads' paper at this year's SciPy 2008: <BR>"First Time Experiences Using SciPy for Computer Vision Research"<BR>http://conference.scipy.org/static/wiki/eads-cv.pdf<BR><BR>Not saying the paper was the definitive word on this subject, but <BR>I thought it was a good paper and an interesting and topical application<BR>area (satellite image analysis for nuclear non-proliferation) and a<BR>SciPy newbie case study.<BR><BR>I suggested we should invite Damian to present at BayPIGgies sometime,<BR>any comments?<BR><BR>In fact, many folks have experience on this question, it would make a great<BR>topic for a presentation by multiple users sharing their viewpoints for different<BR>domains (I haven't done this stuff so I can't comment myself;<BR>The consensus answer as far as I can see seems to depend largely<BR>on how robust and stable the wrapperized code is, how much type-safety<BR>you need, exception-handling, how much control or visibility you have over<BR>the underlying source etc...)<BR><BR>Stephen<BR><BR>&gt; From: nar@hush.com<BR>&gt; To: baypiggies@python.org<BR>&gt; Date: Mon, 29 Dec 2008 12:23:43 -0800<BR>&gt; Subject: [Baypiggies] Opinions on Pyrex vs. ctypes vs. SWIG and whatever else binds to dynamic/shared libs<BR>&gt; <BR>&gt; Hi guys,<BR>&gt; <BR>&gt; Long time lurker, first time poster -- I've got a question that has <BR>&gt; been bugging me for a while and I figured I'd roll it out here to see <BR>&gt; what opinions people may have.<BR>&gt; <BR>&gt; I've done a bit of work with Python binding to DLLs on Windows and <BR>&gt; shared libraries on Linux/OSX, but I've mostly taken the ctypes route <BR>&gt; using GCC-XML to generate wrapper code for me. It would seem that most <BR>&gt; cheese shop modules use Pyrex with hand coded wrappers or SWIG to half <BR>&gt; auto-gen the wrappers and finish off with hand fix-ups.<BR>&gt; <BR>&gt; Since ctypes ships with Python I kind of assumed it would be the <BR>&gt; 'default' way of performing this task, but most people seem to like <BR>&gt; Pyrex and a minority of people seem to use SWIG but hate it.<BR>&gt; <BR>&gt; I suspect the question is similar to asking 'Which is better, vi or <BR>&gt; emacs?', but I'd like to hear what other people are doing / have done <BR>&gt; and why they prefer it?<BR>&gt; <BR>&gt; For those unfamiliar with ctypes / ctypeslib here's the process:<BR>&gt; <BR>&gt; 0) Install gccxml<BR>&gt; 1) Install ctypeslib module if it's not on your system, this will put <BR>&gt; h2xml.py and xml2py.py on your system<BR>&gt; 2) h2xml.py -I/path/to/includes SomeIncludeFile.h -o SomeIncludeFile.xml<BR>&gt; 3) xml2py.py SomeIncludeFile.xml -o NewPythonModule.py<BR>&gt; <BR>&gt; There's a bit of fiddling you can do with the h2xml stuff as far as <BR>&gt; preprocessing, but that's roughly what it takes. You still need to <BR>&gt; hand-fix the generated wrapper code to make it 'pythonic' if thats <BR>&gt; your flavor, since it passes C-type variables in and out, but it still <BR>&gt; seems like a better development flow than using Pyrex/SWIG, but there <BR>&gt; may be factors I'm unaware of. (Which is why I'm asking here!)<BR>&gt; <BR>&gt; Hopefully this isn't too off topic for the list, I look forward to the <BR>&gt; responses,<BR>&gt; <BR>&gt; Thanks!<BR>&gt; <BR>&gt; Nathan Ramella<BR>&gt; nar &lt;&gt; @ &lt;&gt; hush.com<BR><BR><BR><BR>

<HR>
<BR>
It’s the same Hotmail®. If by “same” you mean up to 70% faster. <A href="http://windowslive.com/online/hotmail?ocid=TXT_TAGLM_WL_hotmail_acq_broad1_122008">Get your account now.</A><BR><br /><hr />Windows Live™: Keep your life in sync. <a href='http://windowslive.com/explore?ocid=TXT_TAGLM_WL_t1_allup_explore_012009' target='_new'>Check it out.</a></body>
</html>