<p>There&#39;s also MetaNumerics (<a href="http://metanumerics.codeplex.com/">http://metanumerics.codeplex.com/</a>)</p><p><br> </p><div class="gmail_quote">On Mon, Dec 20, 2010 at 10:32 AM, Mark Senko <span dir="ltr">&lt;<a href="mailto:msenko@completegenomics.com">msenko@completegenomics.com</a>&gt;</span> wrote:<br>
<blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote"><div lang="EN-US" vlink="purple" link="blue">

<div>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;">Thank you.  </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;">At least not much.</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); 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: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

<p class="MsoNormal"><b><span style="color: rgb(31, 73, 125); font-size: 11pt;">Mark Senko</span></b></p>

<p class="MsoNormal"><span style="color: rgb(79, 129, 189); font-size: 11pt;">Complete Genomics, Inc.</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;">2071 Stierlin Court</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;">Mountain View, CA 94043</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125); font-size: 11pt;"> </span></p>

</div><div style="border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) currentColor currentColor; padding: 3pt 0in 0in;">

<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: rgb(31, 73, 125);">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: rgb(31, 73, 125);"> </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: rgb(31, 73, 125);">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: rgb(31, 73, 125);"> </span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125);"> </span></p>

<div>

<div style="border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) currentColor currentColor; padding: 3pt 0in 0in;">

<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: rgb(31, 73, 125);">Mark Senko</span></b></p>

<p class="MsoNormal"><span style="color: rgb(79, 129, 189);">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>