Matches in SemOpenAlex for { <https://semopenalex.org/work/W2003113483> ?p ?o ?g. }
Showing items 1 to 88 of
88
with 100 items per page.
- W2003113483 abstract "The C preprocessor cpp is a widely used tool for implementing variable software. It enables programmers to express variable code (which may even crosscut the entire implementation) with conditional compilation. The C preprocessor relies on simple text processing and is independent of the host language (C, C++, Java, and so on). Language-independent text processing is powerful and expressive - programmers can make all kinds of annotations in the form of #ifdefs - but can render unpreprocessed code difficult to process automatically by tools, such as refactoring, concern management, and variability-aware type checking. We distinguish between disciplined annotations, which align with the underlying source-code structure, and undisciplined annotations, which do not align with the structure and hence complicate tool development. This distinction raises the question of how frequently programmers use undisciplined annotations and whether it is feasible to change them to disciplined annotations to simplify tool development and to enable programmers to use a wide variety of tools in the first place. By means of an analysis of 40 medium-sized to large-sized C programs, we show empirically that programmers use cpp mostly in a disciplined way: about 84% of all annotations respect the underlying source-code structure. Furthermore, we analyze the remaining undisciplined annotations, identify patterns, and discuss how to transform them into a disciplined form." @default.
- W2003113483 created "2016-06-24" @default.
- W2003113483 creator A5002796391 @default.
- W2003113483 creator A5004461302 @default.
- W2003113483 creator A5054951840 @default.
- W2003113483 date "2011-03-21" @default.
- W2003113483 modified "2023-09-23" @default.
- W2003113483 title "Analyzing the discipline of preprocessor annotations in 30 million lines of C code" @default.
- W2003113483 cites W1520520259 @default.
- W2003113483 cites W1625440377 @default.
- W2003113483 cites W1976020328 @default.
- W2003113483 cites W2006617204 @default.
- W2003113483 cites W2016954568 @default.
- W2003113483 cites W2017765016 @default.
- W2003113483 cites W2022929031 @default.
- W2003113483 cites W2036134187 @default.
- W2003113483 cites W2055818134 @default.
- W2003113483 cites W2090432523 @default.
- W2003113483 cites W2106185005 @default.
- W2003113483 cites W2112594421 @default.
- W2003113483 cites W2117352154 @default.
- W2003113483 cites W2119838293 @default.
- W2003113483 cites W2121771606 @default.
- W2003113483 cites W2130195901 @default.
- W2003113483 cites W2133494720 @default.
- W2003113483 cites W2133675710 @default.
- W2003113483 cites W2136694367 @default.
- W2003113483 cites W2144258665 @default.
- W2003113483 cites W2144498941 @default.
- W2003113483 cites W2146146776 @default.
- W2003113483 cites W2148305550 @default.
- W2003113483 cites W2157151174 @default.
- W2003113483 cites W2161345821 @default.
- W2003113483 cites W2161565163 @default.
- W2003113483 cites W2165448973 @default.
- W2003113483 cites W3104103145 @default.
- W2003113483 doi "https://doi.org/10.1145/1960275.1960299" @default.
- W2003113483 hasPublicationYear "2011" @default.
- W2003113483 type Work @default.
- W2003113483 sameAs 2003113483 @default.
- W2003113483 citedByCount "96" @default.
- W2003113483 countsByYear W20031134832012 @default.
- W2003113483 countsByYear W20031134832013 @default.
- W2003113483 countsByYear W20031134832014 @default.
- W2003113483 countsByYear W20031134832015 @default.
- W2003113483 countsByYear W20031134832016 @default.
- W2003113483 countsByYear W20031134832017 @default.
- W2003113483 countsByYear W20031134832018 @default.
- W2003113483 countsByYear W20031134832019 @default.
- W2003113483 countsByYear W20031134832020 @default.
- W2003113483 countsByYear W20031134832021 @default.
- W2003113483 countsByYear W20031134832022 @default.
- W2003113483 countsByYear W20031134832023 @default.
- W2003113483 crossrefType "proceedings-article" @default.
- W2003113483 hasAuthorship W2003113483A5002796391 @default.
- W2003113483 hasAuthorship W2003113483A5004461302 @default.
- W2003113483 hasAuthorship W2003113483A5054951840 @default.
- W2003113483 hasConcept C177264268 @default.
- W2003113483 hasConcept C199360897 @default.
- W2003113483 hasConcept C199519371 @default.
- W2003113483 hasConcept C2776760102 @default.
- W2003113483 hasConcept C2777904410 @default.
- W2003113483 hasConcept C34736171 @default.
- W2003113483 hasConcept C41008148 @default.
- W2003113483 hasConceptScore W2003113483C177264268 @default.
- W2003113483 hasConceptScore W2003113483C199360897 @default.
- W2003113483 hasConceptScore W2003113483C199519371 @default.
- W2003113483 hasConceptScore W2003113483C2776760102 @default.
- W2003113483 hasConceptScore W2003113483C2777904410 @default.
- W2003113483 hasConceptScore W2003113483C34736171 @default.
- W2003113483 hasConceptScore W2003113483C41008148 @default.
- W2003113483 hasLocation W20031134831 @default.
- W2003113483 hasOpenAccess W2003113483 @default.
- W2003113483 hasPrimaryLocation W20031134831 @default.
- W2003113483 hasRelatedWork W2018297885 @default.
- W2003113483 hasRelatedWork W2112962394 @default.
- W2003113483 hasRelatedWork W2118300983 @default.
- W2003113483 hasRelatedWork W2183928278 @default.
- W2003113483 hasRelatedWork W2382501300 @default.
- W2003113483 hasRelatedWork W2382928216 @default.
- W2003113483 hasRelatedWork W3137189469 @default.
- W2003113483 hasRelatedWork W4235530921 @default.
- W2003113483 hasRelatedWork W4243252198 @default.
- W2003113483 hasRelatedWork W4311134623 @default.
- W2003113483 isParatext "false" @default.
- W2003113483 isRetracted "false" @default.
- W2003113483 magId "2003113483" @default.
- W2003113483 workType "article" @default.