Concurrency and Synchronisation in Actel - Abdelouahab, Zair; Dew, Peter M. (Anais do Simpósio Brasileiro de Engenharia de Software (SBES); 1995: Anais do IX Simpósio Brasileiro de Engenharia de SoftwareDO - 10.5753/sbes.1995.24088, 1995)
This paper introduces concurrency mechanisms of a new concurrent object based language called Actel. In particular, it focuses on the issues of how to explore parallel computation with object oriented techniques, how to achieve a good run time efficiency, and how to avoid the burden of explicit synchronisation. Actel offers a variety of inter and intra-object mechanisms to exploit concurrency at several levels of an object. A new mode of message passing called 'semi-reference' is devised to achieve an efficient inter-object communication and to efficiently support inter-object parallelism (coarse grain). The semi-reference allows transmission of references within messages to achieve an eficient delegation whilst preventing inconsistencies. Parallel function are allowed to execute inside an object to achieve medium grain of parallelism without recourse to implicit synchronisation. Finer grain of parallelism can be obtained by activating parallel compound statements inside parallel functions. Multiple future variables (simple or overloaded) are provided to remove the burden of explicit synchronisation, to be the place holder of results from the parallel functions and compound statements and to maximise parallelism.