BACKGROUND
These mechanisms have been used to extend sequential languages such as Concurrent Pascal, Distributed C, etc.
Several imperative concurrent languages have been developed
Many programming models has been designed reflecting several architecture models.