{"id":"https://openalex.org/W1996257542","doi":"https://doi.org/10.1145/1774088.1774532","title":"Generic flow-sensitive optimizing transformations in C++ with concepts","display_name":"Generic flow-sensitive optimizing transformations in C++ with concepts","publication_year":2010,"publication_date":"2010-03-22","ids":{"openalex":"https://openalex.org/W1996257542","doi":"https://doi.org/10.1145/1774088.1774532","mag":"1996257542"},"language":"en","primary_location":{"id":"doi:10.1145/1774088.1774532","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1774088.1774532","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2010 ACM Symposium on Applied Computing","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/A5020173371","display_name":"Xiaolong Tang","orcid":"https://orcid.org/0000-0002-4744-5846"},"institutions":[{"id":"https://openalex.org/I91045830","display_name":"Texas A&M University","ror":"https://ror.org/01f5ytq51","country_code":"US","type":"education","lineage":["https://openalex.org/I91045830"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Xiaolong Tang","raw_affiliation_strings":["Texas A&amp;M University, TX"],"affiliations":[{"raw_affiliation_string":"Texas A&amp;M University, TX","institution_ids":["https://openalex.org/I91045830"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5047665290","display_name":"Jaakko J\u00e4rvi","orcid":"https://orcid.org/0000-0002-3418-7366"},"institutions":[{"id":"https://openalex.org/I91045830","display_name":"Texas A&M University","ror":"https://ror.org/01f5ytq51","country_code":"US","type":"education","lineage":["https://openalex.org/I91045830"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Jaakko J\u00e4rvi","raw_affiliation_strings":["Texas A&amp;M University, TX"],"affiliations":[{"raw_affiliation_string":"Texas A&amp;M University, TX","institution_ids":["https://openalex.org/I91045830"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5020173371"],"corresponding_institution_ids":["https://openalex.org/I91045830"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.08276428,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"2111","last_page":"2118"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/T10126","display_name":"Logic, programming, and type systems","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9973999857902527,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10142","display_name":"Formal Methods in Verification","score":0.9966999888420105,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/computer-science","display_name":"Computer science","score":0.8570956587791443},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7971285581588745},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7790497541427612},{"id":"https://openalex.org/keywords/operand","display_name":"Operand","score":0.7065496444702148},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.6411433219909668},{"id":"https://openalex.org/keywords/abstraction","display_name":"Abstraction","score":0.5546765923500061},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.523122251033783},{"id":"https://openalex.org/keywords/abstract-data-type","display_name":"Abstract data type","score":0.4695608913898468},{"id":"https://openalex.org/keywords/signature","display_name":"Signature (topology)","score":0.46586254239082336},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.4492069482803345},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4422109127044678},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.41924992203712463},{"id":"https://openalex.org/keywords/data-type","display_name":"Data type","score":0.4159579575061798},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.17411673069000244}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8570956587791443},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7971285581588745},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7790497541427612},{"id":"https://openalex.org/C55526617","wikidata":"https://www.wikidata.org/wiki/Q719375","display_name":"Operand","level":2,"score":0.7065496444702148},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.6411433219909668},{"id":"https://openalex.org/C124304363","wikidata":"https://www.wikidata.org/wiki/Q673661","display_name":"Abstraction","level":2,"score":0.5546765923500061},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.523122251033783},{"id":"https://openalex.org/C175971053","wikidata":"https://www.wikidata.org/wiki/Q827335","display_name":"Abstract data type","level":2,"score":0.4695608913898468},{"id":"https://openalex.org/C2779696439","wikidata":"https://www.wikidata.org/wiki/Q7512811","display_name":"Signature (topology)","level":2,"score":0.46586254239082336},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.4492069482803345},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4422109127044678},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.41924992203712463},{"id":"https://openalex.org/C138958017","wikidata":"https://www.wikidata.org/wiki/Q190087","display_name":"Data type","level":2,"score":0.4159579575061798},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.17411673069000244},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1774088.1774532","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1774088.1774532","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2010 ACM Symposium on Applied Computing","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.7400000095367432,"id":"https://metadata.un.org/sdg/16","display_name":"Peace, Justice and strong institutions"}],"awards":[{"id":"https://openalex.org/G379911849","display_name":null,"funder_award_id":"CCF-0541014","funder_id":"https://openalex.org/F4320337387","funder_display_name":"Division of Computing and Communication Foundations"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320337387","display_name":"Division of Computing and Communication Foundations","ror":"https://ror.org/01mng8331"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":22,"referenced_works":["https://openalex.org/W83971587","https://openalex.org/W84930537","https://openalex.org/W1515080612","https://openalex.org/W1528098570","https://openalex.org/W1552268159","https://openalex.org/W1845270947","https://openalex.org/W1978220811","https://openalex.org/W2094426601","https://openalex.org/W2098686415","https://openalex.org/W2113207413","https://openalex.org/W2125346056","https://openalex.org/W2128151625","https://openalex.org/W2133625592","https://openalex.org/W2155919214","https://openalex.org/W2159612723","https://openalex.org/W2169336925","https://openalex.org/W2171780954","https://openalex.org/W2293168449","https://openalex.org/W4239437589","https://openalex.org/W4247332426","https://openalex.org/W6638805065","https://openalex.org/W6697196064"],"related_works":["https://openalex.org/W2120421136","https://openalex.org/W2889297400","https://openalex.org/W156668154","https://openalex.org/W2097802575","https://openalex.org/W4205791794","https://openalex.org/W1996169556","https://openalex.org/W4213129642","https://openalex.org/W624617926","https://openalex.org/W1718424146","https://openalex.org/W4237938900"],"abstract_inverted_index":{"Compilers":[0],"are":[1],"typically":[2],"hardwired":[3],"to":[4,55,77,85,98,132],"attempt":[5],"optimizations":[6],"only":[7],"on":[8],"expressions":[9],"involving":[10],"particular":[11,110],"built-in":[12],"types.":[13,72],"Ideally,":[14],"an":[15,27,116,161],"optimizing":[16],"compiler":[17],"can":[18],"recognize":[19],"a":[20,60,69,78,93,99,106,109],"rewrite":[21,75,127,151],"opportunity":[22],"whenever":[23],"the":[24,30,35,40,48,63,82,89,123,136,142,148,164,170],"operands":[25],"in":[26,88,174],"expression":[28],"satisfy":[29],"(algebraic)":[31],"properties":[32],"that":[33,81,105,118],"justify":[34],"rewrite.":[36],"This":[37],"paper":[38],"applies":[39],"principles":[41],"and":[42,47,65,146],"techniques":[43],"of":[44,53,68,71,125,138,150,163],"generic":[45,126],"programming":[46],"planned":[49],"\"concepts\"":[50],"language":[51],"feature":[52],"C++":[54],"approximate":[56],"this":[57],"ideal.":[58],"Concretely,":[59],"concept":[61,111],"defines":[62],"signature":[64],"algebraic":[66],"laws":[67],"class":[70,90],"We":[73],"attach":[74],"rules":[76,83,152],"concept,":[79],"so":[80],"apply":[84],"all":[86],"types":[87],"defined":[91],"by":[92],"concept.":[94],"The":[95],"annotation":[96,117],"burden":[97],"programmer":[100],"is":[101,112,158,172],"thus":[102],"small---the":[103],"declaration":[104],"type":[107],"models":[108],"simultaneously":[113],"taken":[114],"as":[115,160],"enables":[119],"optimizations.":[120],"To":[121],"increase":[122],"applicability":[124],"rules,":[128,134],"we":[129],"instantiate":[130],"them":[131],"type-specific":[133],"enabling":[135],"use":[137],"data-flow":[139],"information":[140],"from":[141],"compiler's":[143],"existing":[144],"analyses,":[145],"interleave":[147],"application":[149],"with":[153],"function":[154],"inlining.":[155],"Our":[156],"prototype":[157],"implemented":[159],"extension":[162],"ConceptGCC":[165],"compiler;":[166],"our":[167],"experiments":[168],"show":[169],"approach":[171],"effective":[173],"eliminating":[175],"abstraction":[176],"penalties.":[177]},"counts_by_year":[{"year":2014,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
