{"id":"https://openalex.org/W4296510193","doi":"https://doi.org/10.1145/3543712.3543724","title":"Automatic Refactoring and Compile Time Optimization of Cpp Projects by Directly Including Header Files","display_name":"Automatic Refactoring and Compile Time Optimization of Cpp Projects by Directly Including Header Files","publication_year":2022,"publication_date":"2022-05-12","ids":{"openalex":"https://openalex.org/W4296510193","doi":"https://doi.org/10.1145/3543712.3543724"},"language":"en","primary_location":{"id":"doi:10.1145/3543712.3543724","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3543712.3543724","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2022 8th International Conference on Computer Technology Applications","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5029344320","display_name":"Julian Reisch","orcid":"https://orcid.org/0000-0002-5620-1093"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Julian Reisch","raw_affiliation_strings":["Synoptics, Deutschland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Synoptics, Deutschland","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5048250815","display_name":"Peter Gro\u00dfmann","orcid":"https://orcid.org/0000-0001-6106-724X"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Peter Grossmann","raw_affiliation_strings":["Synoptics, Deutschland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Synoptics, Deutschland","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.6373,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":{"value":0.74702794,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"71","last_page":"76"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9993000030517578,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10430","display_name":"Software Engineering Techniques and Practices","score":0.993399977684021,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9929999709129333,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/header","display_name":"Header","score":0.8868869543075562},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8465237617492676},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.7475403547286987},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.613660991191864},{"id":"https://openalex.org/keywords/code-refactoring","display_name":"Code refactoring","score":0.5664548873901367},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.520622730255127},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5148257613182068},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.5031127333641052},{"id":"https://openalex.org/keywords/redundant-code","display_name":"Redundant code","score":0.5002555847167969},{"id":"https://openalex.org/keywords/computer-file","display_name":"Computer file","score":0.4241538941860199},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.36081933975219727},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.33106568455696106},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.14346441626548767},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.12774121761322021},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.08079999685287476},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.07618623971939087}],"concepts":[{"id":"https://openalex.org/C48105269","wikidata":"https://www.wikidata.org/wiki/Q1141160","display_name":"Header","level":2,"score":0.8868869543075562},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8465237617492676},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.7475403547286987},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.613660991191864},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.5664548873901367},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.520622730255127},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5148257613182068},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.5031127333641052},{"id":"https://openalex.org/C151578736","wikidata":"https://www.wikidata.org/wiki/Q1251793","display_name":"Redundant code","level":4,"score":0.5002555847167969},{"id":"https://openalex.org/C95637964","wikidata":"https://www.wikidata.org/wiki/Q82753","display_name":"Computer file","level":2,"score":0.4241538941860199},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.36081933975219727},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.33106568455696106},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.14346441626548767},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.12774121761322021},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.08079999685287476},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.07618623971939087}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3543712.3543724","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3543712.3543724","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2022 8th International Conference on Computer Technology Applications","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.41999998688697815,"id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":7,"referenced_works":["https://openalex.org/W2052588711","https://openalex.org/W2382315693","https://openalex.org/W2488079988","https://openalex.org/W2787379525","https://openalex.org/W2805384152","https://openalex.org/W4230912398","https://openalex.org/W6977491928"],"related_works":["https://openalex.org/W2519339279","https://openalex.org/W283806354","https://openalex.org/W1507167368","https://openalex.org/W1963955771","https://openalex.org/W270927586","https://openalex.org/W2599629507","https://openalex.org/W2382513971","https://openalex.org/W3084917208","https://openalex.org/W1522113126","https://openalex.org/W4287669589"],"abstract_inverted_index":{"The":[0,46,108,146],"compilation":[1,67,183],"of":[2,15,27,69,95,97,110,148],"a":[3,49,122,127],"project":[4],"from":[5],"source":[6,36,44,56,79,128,144],"to":[7,13,64,163,190],"machine":[8],"code":[9,28,37,47,72,98],"can":[10,185],"take":[11],"up":[12,189],"hours":[14],"computation":[16],"time":[17,68],"which":[18,152,155],"in":[19,40,48,54,78,116,126,138,142],"large":[20],"part":[21],"depends":[22],"on":[23,175],"how":[24],"many":[25],"lines":[26,96],"are":[29,100,113,151],"compiled.":[30],"In":[31,62],"the":[32,66,70,93,111,114,117,130,143,149,160,182],"programming":[33],"language":[34],"C++,":[35],"is":[38,52,59,83,124,136],"written":[39],"separate":[41],"header":[42,50,131],"and":[43,102,179],"files.":[45,157],"file":[51,57,132,153],"compiled":[53,104],"each":[55],"it":[58,82],"included":[60,76,101,141],"in.":[61],"order":[63],"minimize":[65],"project,":[71],"should":[73],"therefore":[74],"be":[75,140,186],"only":[77],"files":[80],"where":[81,133],"actually":[84],"used.":[85,107],"We":[86,158,171],"present":[87],"an":[88],"optimization":[89],"model":[90,112,150],"that":[91,99,181],"minimizes":[92],"number":[94],"hence":[103],"but":[105],"not":[106],"restrictions":[109],"dependencies":[115],"code.":[118],"For":[119],"example,":[120],"when":[121],"function":[123,135],"called":[125],"file,":[129],"this":[134],"defined":[137],"must":[139],"file.":[145],"variables":[147],"includes":[154,166],"other":[156],"propose":[159],"solution":[161],"method":[162],"replace":[164],"indirect":[165],"by":[167,188],"more":[168],"direct":[169],"ones.":[170],"provide":[172],"computational":[173],"results":[174],"read-world":[176],"C++":[177],"projects":[178],"show":[180],"times":[184],"reduced":[187],"9%.":[191]},"counts_by_year":[{"year":2024,"cited_by_count":2}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
