Movatterモバイル変換


[0]ホーム

URL:


BT

InfoQ Software Architects' Newsletter

A monthly overview of things you need to know as an architect or aspiring architect.

View an example

We protect your privacy.

QCon London (March 16-19, 2026): Gain actionable insights & strategic perspectives to tackle complex enterprise challenges. Register

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Unlock the full InfoQ experience

Unlock the full InfoQ experience by logging in! Stay updated with your favorite authors and topics, engage with content, and download exclusive resources.

Log In
or

Don't have an InfoQ account?

Register
  • Stay updated on topics and peers that matter to youReceive instant alerts on the latest insights and trends.
  • Quickly access free resources for continuous learningMinibooks, videos with transcripts, and training materials.
  • Save articles and read at anytimeBookmark articles to read whenever youre ready.

Topics

Choose your language

InfoQ HomepageNewsNumPy and SciPy for .NET

NumPy and SciPy for .NET

This item injapanese

Jul 25, 20111min read

Write for InfoQ

Feed your curiosity.Help 550k+ global
senior developers
each month stay ahead.
Get in touch

As part of the Python Tools for Visual Studio project the well-known NumPy and SciPy libraries were ported to .NET. The port, which combines C# and C interfaces over a native C core, was done in such a way that all .NET languages can take advantage of it.

TheIronPython ports of NumPy and SciPy are full .NET ports and include custom C#/C interfaces to a common native C core. This means that the full functionality is available not only to IronPython but to all .NET languages such as C# or F# by directly accessing the C# interface objects or sometimes by evaluating IronPython expressions from other .NET languages. This means that a multi-dimensional array object (ndarray) can be passed seamlessly between IronPython and C# or F# code. Further, the ndarray object implements the standard IEnumerable interface, allowing the array object to often be used with existing code that is not specific to NumPy.

NumPy is a fairly low level API for performing mathematical operations on large, multi-dimensional arrays and matrices. This library, originally known as Numeric, dates back to 1995, just one year after Python 1.0 was released. The current name of version of the library was created in 2005 by combining the earlier versions with a competing library known as numarray.

Built on top of this isSciPy. According to Wikipedia, “SciPy contains modules for optimization, linear algebra, integration, interpolation, special functions, FFT, signal and image processing, ODE solvers and other tasks common in science and engineering.” It is often considered an alternative to MATLAB, though SciPy often has to be combined withother libraries to fully replace the former.

The combination of NumPy and SciPy offers some notable advantages over normal .NET code. While .NET’s garbage collector can offer better performance than manual memory management, there is something to be said for the raw computational speed one can get from highly optimized C code.

On top of this is the concept of views. Instead of copying arrays, NumPy allows one to create arrays that are live subsets of other arrays. Changing the subset, known formally as a view, also changes the original array. This allows for cleaner code without sacrificing performance.

Rate this Article

Adoption
Style

The InfoQ Newsletter

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers.View an example

We protect your privacy.

BT

[8]ページ先頭

©2009-2026 Movatter.jp