Instruct: Identify the main and secondary category of Arxiv papers based on the titles and abstracts
Query: Mastering Concurrent Computing Through Sequential Thinking: A
  Half-century Evolution   Concurrency, the art of doing many things at the same time is slowly becoming
a science. It is very difficult to master, yet it arises all over modern
computing systems, both when the communication medium is shared memory and when
it is by message passing. Concurrent programming is hard because it requires to
cope with many possible, unpredictable behaviors of communicating processes
interacting with each other. Right from the start in the 1960s, the main way of
dealing with concurrency has been by reduction to sequential reasoning. We
trace this history, and illustrate it through several examples, from early
ideas based on mutual exclusion, passing through consensus and concurrent
objects, until today ledgers and blockchains. We conclude with a discussion on
the limits that this approach encounters, related to fault-tolerance,
performance, and inherently concurrent problems.

26
The categories of this paper are: bayes-an
29
The categories of this paper are: funct-an
33
The categories of this paper are: plasm-ph
6
The categories of this paper are: astro-ph
12
The categories of this paper are: nucl-th
36
The categories of this paper are: cmp-lg
17
The categories of this paper are: q-fin
11
The categories of this paper are: hep-lat
16
The categories of this paper are: stat
19
The categories of this paper are: eess
3
The categories of this paper are: physics
34
The categories of this paper are: chem-ph
28
The categories of this paper are: alg-geom
22
The categories of this paper are: chao-dyn
37
The categories of this paper are: supr-con
21
The categories of this paper are: adap-org