Instruct: Identify the main and secondary category of Arxiv papers based on the titles and abstracts
Query: The Case for Explicit Coupling Constraints   A software element defined in one place is typically used in many places.
When it is changed, all its occurrences may need to be changed too, which can
severely hinder software evolution. This has led to the support of
encapsulation in modern programming languages. Unfortunately, as is shown in
this paper, this is not enough to express all the constraints that are needed
to decouple programming elements that evolve at different paces.
  In this paper we show that: a language can be defined to easily express very
general coupling constraints; violations to these constraints can be detected
automatically. We then demonstrate several places where the need for coupling
constraints arose in open-source Java projects. These constraints were
expressed in comments when explicit constraints would have enabled automatic
treatment.

22
The categories of this paper are: chao-dyn
18
The categories of this paper are: econ
2
The categories of this paper are: math
28
The categories of this paper are: alg-geom
32
The categories of this paper are: atom-ph
21
The categories of this paper are: adap-org
23
The categories of this paper are: solv-int
30
The categories of this paper are: q-alg
7
The categories of this paper are: hep-th
10
The categories of this paper are: q-bio
20
The categories of this paper are: acc-phys
34
The categories of this paper are: chem-ph
26
The categories of this paper are: bayes-an
5
The categories of this paper are: gr-qc
6
The categories of this paper are: astro-ph
37
The categories of this paper are: supr-con