Multithreaded,
Parallel, and Distributed Programming (MPD) is a
concurrent programming language whose
syntax is derived from the one used in the book ''Foundations of Multithreaded, Parallel, and Distributed Programming''. The name lists the distinguishing features of the
language
Language is a structured system of communication. The structure of a language is its grammar and the free components are its vocabulary. Languages are the primary means by which humans communicate, and may be conveyed through a variety of ...
, namely that it supports all three of these concurrent programming techniques.
MPD is implemented as a variant of the
SR programming language SR (short for Synchronizing Resources) is a programming language designed for concurrent programming.
''Resources'' encapsulate processes and the variables they share, and can be separately compiled. ''Operations'' provide the primary mechanism fo ...
. It has a different
parser
Parsing, syntax analysis, or syntactic analysis is the process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar. The term ''parsing'' comes from Lati ...
, but it uses the same intermediate form and run-time system as SR. Consequently, MPD provides the same variety of
concurrent programming mechanisms as does SR.
MPD programs can execute on single
processors
A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, an ...
,
shared-memory multiprocessor
Multiprocessing is the use of two or more central processing units (CPUs) within a single computer system. The term also refers to the ability of a system to support more than one processor or the ability to allocate tasks between them. There ar ...
s, or clusters of (homogeneous) processors. The implementation transparently supports a variety of different kinds of processors and
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
systems.
Sample Code
resource helloWorld()
writes("Hello World\n")
end
External links
MPD page at University of Arizonacopy in archive.org
Concurrent programming languages
SR programming language family
{{compu-lang-stub