source: doc/proposals/concurrency/text/intro.tex @ bf70aa9

Last change on this file since bf70aa9 was 7c17511, checked in by Thierry Delisle <tdelisle@…>, 7 years ago

More work on the basics section

  • Property mode set to 100644
File size: 1.2 KB
1% ======================================================================
3% ======================================================================
5This proposal provides a minimal concurrency API that is simple, efficient and can be reused to build higher-level features. The simplest possible concurrency system is a thread and a lock but this low-level approach is hard to master. An easier approach for users is to support higher-level constructs as the basis of the concurrency, in \CFA. Indeed, for highly productive parallel programming, high-level approaches are much more popular~\cite{HPP:Study}. Examples are task based, message passing and implicit threading. Therefore a high-level approach is adapted in \CFA
7There are actually two problems that need to be solved in the design of concurrency for a programming language: which concurrency and which parallelism tools are available to the users. While these two concepts are often combined, they are in fact distinct concepts that require different tools~\cite{Buhr05a}. Concurrency tools need to handle mutual exclusion and synchronization, while parallelism tools are about performance, cost and resource utilization.
Note: See TracBrowser for help on using the repository browser.