FortranM is a
computer language
A computer language is a formal language used to communicate with a computer. Types of computer languages include:
* Software construction#Construction languages, Construction language – all forms of communication by which a human can Comput ...
for modular
parallel programming
Parallel computing is a type of computing, computation in which many calculations or Process (computing), processes are carried out simultaneously. Large problems can often be divided into smaller ones, which can then be solved at the same time. ...
.
[''Patterns for Parallel Software Design'' by Jorge Luis Ortega-Arjona 2010 page 22] Its syntax is based on
Fortran but has additional elements such as channels and ports for communication between processes.
The language was designed by
K. Mani Chandy
Kanianthra Mani Chandy (born 25 October 1944) is the Simon Ramo Professor of Computer Science at the California Institute of Technology (Caltech). He has been the Executive Officer of the Computer Science Department twice, and he has been a pr ...
's group at
Caltech
The California Institute of Technology (branded as Caltech) is a private university, private research university in Pasadena, California, United States. The university is responsible for many modern scientific advancements and is among a small g ...
, along with an
Argonne national labs team.
[Argonne national labs FortranM]
/ref> The compiler for the language is freely available from Argonne labs.
In FortranM processes communicate by sending and receiving messages on channels. Processes and channels can be dynamically created, but programs remain deterministic.
Sources
Fortran
{{prog-lang-stub