Interoperability of Mojo Programming Language with Python Ecosystem: Using NumPy (Fundamental Package for Scientific Computing in Python) Library in Mojo Programming Language — to compute Element-wise Minimum of Array Elements

Shriram Sivanandhan
4 min readMar 8, 2024

--

Mojo Programming Language combines the usability of Python with the performance of C, C++ and Rust. Mojo Programming Language utilizes next-generation compiler technologies with features like caching, multithreading and cloud distribution technologies. Further, Auto-Tuning and compile-time Metaprogramming features allows to write code for several hardware. The advantages of Mojo Programming Language are Usability & Programmability, best performance, Interoperability and Extensibility.

As we saw Interoperability of Mojo Programming Language with Python Ecosystem to use Matplotlib Python Visualization Library, Pandas Python Data Analysis and Manipulation Library, NumPy (Fundamental Package for Scientific Computing in Python) Library and SciPy Python Library in Mojo Programming Language in previous Articles/Blogs. In this Article/Blog, we are going to see the Interoperability of Mojo Programming Language with Python Ecosystem to use NumPy (Fundamental Package for Scientific Computing in Python) Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language.

In this Blog, Programming in Mojo is done using Mojo Playground.

Interoperability of Mojo Programming Language with Python Ecosystem:

In Mojo Programming Language, Interoperability with Python Ecosystem can be done to import Python modules / libraries / custom code / local modules and use it with Mojo Programming and also to create Python types from Mojo types. This mechanism uses CPython Interpreter to run the Python code and currently it works with all Python modules.

NumPy (Fundamental Package for Scientific Computing in Python) Library in Mojo Programming Language:

NumPy (Numerical Python) is an open-source Python Library and it is the Fundamental Package for Scientific Computing in Python. NumPy is used in every field of Science and Engineering.

Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language:

To import a Python module / library in Mojo, first we should import Python from python module / library, then we should use Python.import_module() fucntion with the required module name.

Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language
Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language (Implementation in Mojo Playground)

In the above example, we had computed to compute Element-wise Minimum of Array Elements using minimum(x1, x2) function of numpy package / library, where the minimum(x1, x2) function takes two array_like input values and then compares these two arrays and returns a new array which contains element-wise minima.

Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language
Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language (Implementation in Mojo Playground)
Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language
Using NumPy Python Library to compute Element-wise Minimum of Array Elements in Mojo Programming Language (Implementation in Mojo Playground)

Since, Mojo Programming Language is still in development some features of Python Programming Language are not yet implemented in Mojo and not a full superset of Python yet, but all the missing Python features will be implemented soon as mentioned by Modular-Mojo Development Team. But Mojo Programming Language already consists of many features and capabilities beyond Python Programming Language.

We had seen about Interoperability of Mojo Programming Language with Python Ecosystem to use NumPy (Fundamental Package for Scientific Computing in Python) Library in Mojo Programming Language. We had seen about how to compute Element-wise Minimum of Array Elements in Mojo Programming. Programming in Mojo and Mojo Programming concepts will be discussed further.

Thankyou for reading this blog on Interoperability of Mojo Programming Language with Python Ecosystem: Using NumPy (Fundamental Package for Scientific Computing in Python) Library in Mojo Programming Language — to compute Element-wise Minimum of Array Elements.

Reference:

https://docs.modular.com/mojo/programming-manual.html

https://docs.modular.com/mojo/manual/basics/

https://numpy.org/doc/stable/index.html

https://numpy.org/doc/stable/index.html

--

--