<div>Hello,</div>
<div> </div>
<div>I was also looking for a math library to use with a research tool I was developing. I am using IronPython as the scripting language as it is easy for non programmers, who are familiar with Matlab, to quickly prototype their algorithms. I evaluated Math.NET (<a href="http://mathnetnumerics.codeplex.com/">http://mathnetnumerics.codeplex.com/</a>) and ILNumerics (<a href="http://ilnumerics.net/">http://ilnumerics.net/</a>). I sill prefer if I could use NumPy and SciPy with IronPython and am interested in trying out the Enthought refactored version.</div>

<div> </div>
<div>As for plotting packages, MatPlotLib (<a href="http://matplotlib.sourceforge.net/">http://matplotlib.sourceforge.net/</a>) is a great plotting library for python. It relies on NumPy. I managed to run it with IronClad, but I still prefer a fully managed version. I ended up writing a wrapper around Microsoft&#39;s charting library, so that plot(x,y) could produce a line plot etc. I would love to know if someone came across a plotting library to use with IronPython similar to matplotlib/Matlab type plotting.</div>

<div> </div>
<div>Aravin</div>
<div> </div>
<div class="gmail_quote">On Tue, Dec 21, 2010 at 12:02 AM, Mark Senko <span dir="ltr">&lt;<a href="mailto:msenko@completegenomics.com">msenko@completegenomics.com</a>&gt;</span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div lang="EN-US" vlink="purple" link="blue">
<div>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Thank you.  </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">My real goal is to find a decent math/numerical package that I can use without having to reinvent the wheel.</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">My searches came up with numpy/SciPy.  Whether it actually uses the C interface or is a refactored version for .NET  really doesn’t matter to me.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">At least not much.</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">I think I’ll take this opportunity to explain to this portion of the IronPython community (which seems to contain most of the real “movers” ) why I chose IronPython, and what I want to accomplish with it.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">I’m sure my use case may be of interest, at least academically, to some of you.  </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">I write software that controls hardware … it moves samples around with a robot and stage, controls shutters, light sources, moves optics, performs data acquisition and data analysis.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">It’s a complicated system. It requires scientists and engineers with high levels of knowledge in optics, physics, electronics to develop, study and understand performance, and to calibrate.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">At my old company, we wrote our own macro language (early ‘90s) which provided functions to move the pieces of hardware, call higher level routines in our code, call mathematical and higher level analysis routines, plot, macros could call other macros  … just about anything you want a scripting language to do.  The portion of my efforts I spent extending this macro language was time well spent.  Instead of being the bottleneck that had to write all new tests and experiments and new platform prototyping, I enabled the other scientists and engineers to do it themselves. I was an enabler, and productivity shot through the roof. </span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Some of the macros written were simple, others complicated … but most were not written by me, they were written by the scientists and engineers.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">But, they were not programmers … at least not in the computer scientist sense.  They think procedurally, not object oriented.  They don’t want to argue about global vs. local variables, or whether a GOTO is good programming style.  They don’t develop web pages.  </span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">At my new company, which builds a tool with similar demands, I am implementing similar scripting abilities.  I didn’t want to write my own scripting language again, that would be crazy with the number that are already available.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">The core needs are control over the hardware, numerical capabilities, plotting capabilities.  The language also needs to be straightforward without too much overhead, like a pile of import statements, that don’t really contribute to the functionality.  I also wanted a language with a some history, and lot’s of community written libraries that I could use without having to write my own.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">I did my internet search and looked at many different scripting languages, finally settling on Python as having the best set of language features for my needs.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Granted, I HATE the indentation control, especially since an auto-indented line has a “different” indentation than the preceding line which was indented with spaces (unless you carefully set up your editor).</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">I would much rather see braces or ENDIF,ENDFOR, ENDDEF … statements. That’s just an aside …</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Our company uses C#.  I quickly discovered that C# and Python don’t play well together …. Ah, but here is IronPython.</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">So I learned how to embed it, wrote my own console, learned how to make static wrappers, how to make my functions global, and how to make python functions global.  I’m still learning the best and easiest ways to use it for our needs.  </span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">But, I’m starting to find that the community developed libraries I was counting on are more often than not out of reach. That is what I found when I started looking for  a simple math package that would fit a polynomial, perform an FFT, maybe even do a non-linear least squares fit.  And I still need to find a plotting package …</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Anyway, I thought this might be interesting to some of you.</span></p>
<div class="im">
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p>
<p class="MsoNormal"><b><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Mark Senko</span></b></p>
<p class="MsoNormal"><span style="COLOR: #4f81bd; FONT-SIZE: 11pt">Complete Genomics, Inc.</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">2071 Stierlin Court</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt">Mountain View, CA 94043</span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d; FONT-SIZE: 11pt"> </span></p></div>
<div style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<p class="MsoNormal"><b><span style="FONT-SIZE: 10pt">From:</span></b><span style="FONT-SIZE: 10pt"> <a href="mailto:users-bounces@lists.ironpython.com" target="_blank">users-bounces@lists.ironpython.com</a> [mailto:<a href="mailto:users-bounces@lists.ironpython.com" target="_blank">users-bounces@lists.ironpython.com</a>] <b>On Behalf Of </b>Jason McCampbell<br>
<b>Sent:</b> Monday, December 20, 2010 7:13 AM<br><b>To:</b> Discussion of IronPython<br><b>Subject:</b> Re: [IronPython] SciPy</span></p></div>
<div>
<div></div>
<div class="h5">
<p class="MsoNormal"> </p>
<p class="MsoNormal">Hi Mark,</p>
<div>
<p class="MsoNormal"> </p></div>
<div>
<p class="MsoNormal">As Dino mentioned we (Enthought) are working on refactoring Numpy into a pure &quot;C&quot; core with CPython and IronPython interface layers.  This is largely complete and available at github (<a href="https://github.com/numpy/numpy-refactor" target="_blank">https://github.com/numpy/numpy-refactor</a>), though the core layer is largely undocumented thus far.  This is the multi-dimensional array.</p>
</div>
<div>
<p class="MsoNormal"> </p></div>
<div>
<p class="MsoNormal">SciPy is in progress and we are updating it to work with the refactored numpy core and to add an IronPython interface.  </p></div>
<div>
<p class="MsoNormal"> </p></div>
<div>
<p class="MsoNormal">I assume you are looking for IronPython interfaces to SciPy as opposed to a C interface, correct?  </p></div>
<div>
<p class="MsoNormal"> </p></div>
<div>
<p class="MsoNormal">Regards,</p></div>
<div>
<p class="MsoNormal">Jason</p></div>
<div>
<p style="MARGIN-BOTTOM: 12pt" class="MsoNormal"> </p>
<div>
<p class="MsoNormal">On Thu, Dec 16, 2010 at 1:56 PM, Dino Viehland &lt;<a href="mailto:dinov@microsoft.com" target="_blank">dinov@microsoft.com</a>&gt; wrote:</p>
<div>
<div>
<p class="MsoNormal"><span style="COLOR: #1f497d">Enthought has been working on getting numpy/scipy ported over to work w/ IronPython.  I believe numpy is working but I’m not sure of how far along SciPy is.  There’s a separate mailing list for this at:</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d"> </span></p>
<p class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"><a href="https://mail.enthought.com/mailman/listinfo/scipy4dotnet" target="_blank">https://mail.enthought.com/mailman/listinfo/scipy4dotnet</a></span></p>

<p class="MsoNormal"><span style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d">It’s very low traffic – it’s usually just working through issues Enthought has run into and either workarounds or suggested changes to IronPython.  I’d suggest sending a mail there – they might have something you can try.</span></p>

<p class="MsoNormal"><span style="COLOR: #1f497d"> </span></p>
<p class="MsoNormal"><span style="COLOR: #1f497d"> </span></p>
<div>
<div style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<p class="MsoNormal"><b><span style="FONT-SIZE: 10pt">From:</span></b><span style="FONT-SIZE: 10pt"> <a href="mailto:users-bounces@lists.ironpython.com" target="_blank">users-bounces@lists.ironpython.com</a> [mailto:<a href="mailto:users-bounces@lists.ironpython.com" target="_blank">users-bounces@lists.ironpython.com</a>] <b>On Behalf Of </b>Mark Senko<br>
<b>Sent:</b> Thursday, December 16, 2010 11:49 AM<br><b>To:</b> <a href="mailto:users@lists.ironpython.com" target="_blank">users@lists.ironpython.com</a><br><b>Subject:</b> [IronPython] SciPy</span></p></div></div>
<div>
<div>
<p class="MsoNormal"> </p>
<p class="MsoNormal">I’ve been searching for the current state of support for “C” based libraries, specifically SciPy (I’m just looking for a decent numerical analysis package).  The responses I’ve seen on various websites are somewhat dated.</p>

<p class="MsoNormal">What is the latest status, or is there no effort towards accommodating the C API? Is IronClad still the best option? Any info, suggestions and warnings would be appreciated before I start to invest a lot of time into installing and learning these packages.</p>

<p class="MsoNormal"> </p>
<p class="MsoNormal"><b><span style="COLOR: #1f497d">Mark Senko</span></b></p>
<p class="MsoNormal"><span style="COLOR: #4f81bd">Complete Genomics, Inc.</span></p>
<p class="MsoNormal">2071 Stierlin Court</p>
<p class="MsoNormal">Mountain View, CA 94043</p>
<p class="MsoNormal"> </p><pre> </pre><pre> </pre><pre>____ </pre><pre> </pre><pre>The contents of this e-mail and any attachments are confidential and only for </pre><pre>use by the intended recipient. Any unauthorized use, distribution or copying </pre>
<pre>of this message is strictly prohibited. If you are not the intended recipient </pre><pre>please inform the sender immediately by reply e-mail and delete this message </pre><pre>from your system. Thank you for your co-operation.</pre>
</div></div></div></div>
<p style="MARGIN-BOTTOM: 12pt" class="MsoNormal"><br>_______________________________________________<br>Users mailing list<br><a href="mailto:Users@lists.ironpython.com" target="_blank">Users@lists.ironpython.com</a><br>
<a href="http://lists.ironpython.com/listinfo.cgi/users-ironpython.com" target="_blank">http://lists.ironpython.com/listinfo.cgi/users-ironpython.com</a></p></div>
<p class="MsoNormal"> </p></div></div></div></div></div>
<div>
<div></div>
<div class="h5"><pre>____ 
 
The contents of this e-mail and any attachments are confidential and only for 
use by the intended recipient. Any unauthorized use, distribution or copying 
of this message is strictly prohibited. If you are not the intended recipient 
please inform the sender immediately by reply e-mail and delete this message 
from your system. Thank you for your co-operation.</pre></div></div><br>_______________________________________________<br>Users mailing list<br><a href="mailto:Users@lists.ironpython.com">Users@lists.ironpython.com</a><br>
<a href="http://lists.ironpython.com/listinfo.cgi/users-ironpython.com" target="_blank">http://lists.ironpython.com/listinfo.cgi/users-ironpython.com</a><br><br></blockquote></div><br>