- This is a not so much a WikiProject, as it is a personal summary of what I feel needs fixing in the area of Concurrency (computer science), and some ideas on how to approach the repairs. It just happens to be structured something like a WikiProject page because that format is good for organizing my thoughts. Nevertheless, feel free to edit this page as though it wasn't in my userspace — input from others is very welcome.
Motivation
editWikipedia has a large number of articles devoted to different aspects of concurrency. Unfortunately, these articles have been developed in a piecemeal fashion. This has resulted in:
- Wildly varying article quality.
- A lot of overlap between the material covered in different articles.
- A lack of coherent structure — information is scattered and disorganized.
- Significant gaps in the information that is presented
Goals
edit- Develop individual articles relating to concurrency to the highest-possible standard.
- Make concurrency articles accessible.
- Work towards featured article status for concurrency articles.
- Organize the articles relating to concurrency into a coherent structure.
- Add new articles where necessary to fill in gaps in information on concurrency.
Scope
editArticles relating to concurrency. This includes both the theoretical study of concurrency, and the practicalities of implementing and using concurrency. Articles with a principle focus other than concurrency, but which include concurrency (e.g. Denotational semantics) will probably also receive attention.
To-do list
edit- Work on improving an existing concurrency article.
- Find concurrency articles not yet included in the structure below, and add them.
- Figure out where the gaps are, and either add articles, or list them below as to be added.
- Create an article that needs to be added.
- Rearrange the structure below to better organize the information.
- Develop a list of proposed articles merges to unify and structure the content of the project articles.
Topics in concurrency
editHead article
editTheory of concurrency
edit- Models of concurrency — to be added — very preliminary draft at User:Allan McInnes/Drafts/Models of concurrency
- Fairness (computer science) — to be added
- Unbounded nondeterminism
- Bisimulation
Logics for concurrency
edit- Hennessy-Milner logic — to be added
- Linear temporal logic
- Computational tree logic
- Temporal Logic of Actions
Formal specification languages for concurrent systems
edit- Communicating Sequential Processes
- LOTOS
- mCRL — to be added
- TLA+
Tools for analyzing concurrent systems
edit- FDR2 — to be added
- List of Petri net tools
- SPIN model checker
- TLC model checker — to be added
- Uppaal Model Checker
Classic problems
editConcurrent interaction
edit- Deadlock
- Livelock
- Race condition
- Shared memory
- Concurrency control
- Message passing