Modules: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
(Marked this version for translation)
No edit summary
Line 3: Line 3:


<!--T:1-->
<!--T:1-->
In computing, a module is a unit of software that is designed to be independent, interchangeable, and contain everything necessary to provide some desired functionality.
In computing, a module is a unit of software that is designed to be independent, interchangeable, and contains everything necessary to provide the desired functionality.
<ref>[https://en.wikipedia.org/wiki/Modular_programming Wikipedia, "Modular programming"]</ref>
<ref>[https://en.wikipedia.org/wiki/Modular_programming Wikipedia, "Modular programming"]</ref>
The term "module" may sometimes have a more specific meaning depending on context.
The term "module" may sometimes have a more specific meaning depending on the context.
This page describes a few types of modules and cites their corresponding documentation pages.  
This page describes a few types of modules with their corresponding documentation pages.  


== Disambiguation == <!--T:2-->
== Disambiguation == <!--T:2-->
Line 19: Line 19:


<!--T:6-->
<!--T:6-->
In Python, a module is file of code (usually Python code) which can be loaded with the <code>import ...</code> or <code>from ... import ...</code> statements to provide functionality.  A Python package is a collection of Python modules; the terms "package" and "module" are frequently interchanged in casual use.
In Python, a module is a file of code (usually Python code) which can be loaded with the <code>import ...</code> or <code>from ... import ...</code> statements to provide functionality.  A Python package is a collection of Python modules; the terms "package" and "module" are frequently interchanged in casual use.
<ref>[https://www.tutorialspoint.com/What-is-the-difference-between-a-python-module-and-a-python-package Tutorialspoint.com, "What is the difference between a python module and a python package?"]</ref>
<ref>[https://www.tutorialspoint.com/What-is-the-difference-between-a-python-module-and-a-python-package Tutorialspoint.com, "What is the difference between a python module and a python package?"]</ref>


<!--T:7-->
<!--T:7-->
Certain frequently-used Python modules such as "Numpy" can be imported if you first load the <code>scipy-stack</code> Lmod module at the shell level.
Certain frequently-used Python modules such as Numpy can be imported if you first load the <code>scipy-stack</code> Lmod module at the shell level.
See [[Python#SciPy_stack|SciPy stack]] for details.
See [[Python#SciPy_stack|SciPy stack]] for details.


<!--T:8-->
<!--T:8-->
Compute Canada maintains a large collection of [[Python#Available_wheels|Python "wheels"]].
We maintain a large collection of [[Python#Available_wheels|Python "wheels"]].
These are modules which are pre-compiled to be compatible with the [[Standard software environments]].
These are modules which are pre-compiled to be compatible with the [[Standard software environments]].
Before importing modules from the Compute Canada wheels, you should create a [[Python#Creating_and_using_a_virtual_environment|virtual environment]].   
Before importing modules from the our wheels, you should create a [[Python#Creating_and_using_a_virtual_environment|virtual environment]].   


<!--T:9-->
<!--T:9-->
Python modules which are in neither the <code>scipy-stack</code> Lmod module or our wheels collection can be installed from the internet
Python modules which are in neither the <code>scipy-stack</code> Lmod module or in our wheels collection can be installed from the internet
as described at [[Installing packages|Python#Installing_packages]].
as described at [[Installing packages|Python#Installing_packages|the Installing packages section]].


== Other related topics == <!--T:10-->
== Other related topics == <!--T:10-->

Revision as of 15:21, 28 June 2021

Other languages:

In computing, a module is a unit of software that is designed to be independent, interchangeable, and contains everything necessary to provide the desired functionality. [1] The term "module" may sometimes have a more specific meaning depending on the context. This page describes a few types of modules with their corresponding documentation pages.

Disambiguation

Lmod modules

Also called "environment modules", Lmod modules are used to alter your (shell) environment so as to enable you to use a particular software package, or to use a non-default version of certain common software packages such as compilers. See Using modules.

Python modules

In Python, a module is a file of code (usually Python code) which can be loaded with the import ... or from ... import ... statements to provide functionality. A Python package is a collection of Python modules; the terms "package" and "module" are frequently interchanged in casual use. [2]

Certain frequently-used Python modules such as Numpy can be imported if you first load the scipy-stack Lmod module at the shell level. See SciPy stack for details.

We maintain a large collection of Python "wheels". These are modules which are pre-compiled to be compatible with the Standard software environments. Before importing modules from the our wheels, you should create a virtual environment.

Python modules which are in neither the scipy-stack Lmod module or in our wheels collection can be installed from the internet as described at Python#Installing_packages|the Installing packages section.

Other related topics

The main Available software page is a good starting point. Other related pages:

Footnotes