{"id":"https://openalex.org/W2140487696","doi":"https://doi.org/10.1145/2658761.2658774","title":"Specialization through dynamic staging","display_name":"Specialization through dynamic staging","publication_year":2014,"publication_date":"2014-08-29","ids":{"openalex":"https://openalex.org/W2140487696","doi":"https://doi.org/10.1145/2658761.2658774","mag":"2140487696"},"language":"en","primary_location":{"id":"doi:10.1145/2658761.2658774","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2658761.2658774","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2014 International Conference on Generative Programming: Concepts and Experiences","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/A5006839717","display_name":"Piotr Danilewski","orcid":null},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]},{"id":"https://openalex.org/I4210094487","display_name":"Intel (Germany)","ror":"https://ror.org/00m2x0g47","country_code":"DE","type":"company","lineage":["https://openalex.org/I1343180700","https://openalex.org/I4210094487"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Piotr Danilewski","raw_affiliation_strings":["Saarland University, Germany / Intel VCI, Germany"],"affiliations":[{"raw_affiliation_string":"Saarland University, Germany / Intel VCI, Germany","institution_ids":["https://openalex.org/I4210094487","https://openalex.org/I91712215"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5111488071","display_name":"Marcel K\u00f6ster","orcid":null},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Marcel K\u00f6ster","raw_affiliation_strings":["Saarland University, Germany"],"affiliations":[{"raw_affiliation_string":"Saarland University, Germany","institution_ids":["https://openalex.org/I91712215"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5002266283","display_name":"Roland Lei\u00dfa","orcid":"https://orcid.org/0000-0002-2444-6782"},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Roland Lei\u00dfa","raw_affiliation_strings":["Saarland University, Germany"],"affiliations":[{"raw_affiliation_string":"Saarland University, Germany","institution_ids":["https://openalex.org/I91712215"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5024954324","display_name":"Richard Membarth","orcid":"https://orcid.org/0000-0002-9979-7579"},"institutions":[{"id":"https://openalex.org/I4210094487","display_name":"Intel (Germany)","ror":"https://ror.org/00m2x0g47","country_code":"DE","type":"company","lineage":["https://openalex.org/I1343180700","https://openalex.org/I4210094487"]},{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Richard Membarth","raw_affiliation_strings":["Saarland University, Germany / Intel VCI, Germany / DFKI, Germany","Saarland University, Germany / Intel VCI, Germany / DFKI, Germany#TAB#"],"affiliations":[{"raw_affiliation_string":"Saarland University, Germany / Intel VCI, Germany / DFKI, Germany","institution_ids":["https://openalex.org/I4210094487","https://openalex.org/I91712215"]},{"raw_affiliation_string":"Saarland University, Germany / Intel VCI, Germany / DFKI, Germany#TAB#","institution_ids":["https://openalex.org/I91712215"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5026514026","display_name":"Philipp Slusallek","orcid":null},"institutions":[{"id":"https://openalex.org/I91712215","display_name":"Saarland University","ror":"https://ror.org/01jdpyv68","country_code":"DE","type":"education","lineage":["https://openalex.org/I91712215"]},{"id":"https://openalex.org/I4210094487","display_name":"Intel (Germany)","ror":"https://ror.org/00m2x0g47","country_code":"DE","type":"company","lineage":["https://openalex.org/I1343180700","https://openalex.org/I4210094487"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Philipp Slusallek","raw_affiliation_strings":["Saarland University, Germany / Intel VCI, Germany / DFKI, Germany","Saarland University, Germany / Intel VCI, Germany / DFKI, Germany#TAB#"],"affiliations":[{"raw_affiliation_string":"Saarland University, Germany / Intel VCI, Germany / DFKI, Germany","institution_ids":["https://openalex.org/I4210094487","https://openalex.org/I91712215"]},{"raw_affiliation_string":"Saarland University, Germany / Intel VCI, Germany / DFKI, Germany#TAB#","institution_ids":["https://openalex.org/I91712215"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5006839717"],"corresponding_institution_ids":["https://openalex.org/I4210094487","https://openalex.org/I91712215"],"apc_list":null,"apc_paid":null,"fwci":2.1143,"has_fulltext":false,"cited_by_count":6,"citation_normalized_percentile":{"value":0.89985669,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"103","last_page":"112"},"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.9991000294685364,"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.9991000294685364,"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/T10260","display_name":"Software Engineering Research","score":0.9987999796867371,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9983999729156494,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/metaprogramming","display_name":"Metaprogramming","score":0.9026244878768921},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8899657130241394},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.7565751075744629},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7114489078521729},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5864247679710388},{"id":"https://openalex.org/keywords/domain","display_name":"Domain (mathematical analysis)","score":0.4793456494808197},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.4778061509132385},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.4699678122997284},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.3597482442855835}],"concepts":[{"id":"https://openalex.org/C35390924","wikidata":"https://www.wikidata.org/wiki/Q661075","display_name":"Metaprogramming","level":2,"score":0.9026244878768921},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8899657130241394},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.7565751075744629},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7114489078521729},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5864247679710388},{"id":"https://openalex.org/C36503486","wikidata":"https://www.wikidata.org/wiki/Q11235244","display_name":"Domain (mathematical analysis)","level":2,"score":0.4793456494808197},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.4778061509132385},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.4699678122997284},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3597482442855835},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","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/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2658761.2658774","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2658761.2658774","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2014 International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.713.756","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.713.756","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"https://graphics.cg.uni-saarland.de/fileadmin/cguds/papers/2014/danilewski_GPCE2014/danilewski_gpce14.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Peace, Justice and strong institutions","id":"https://metadata.un.org/sdg/16","score":0.44999998807907104}],"awards":[],"funders":[{"id":"https://openalex.org/F4320320300","display_name":"European Commission","ror":"https://ror.org/00k4n6c32"},{"id":"https://openalex.org/F4320321114","display_name":"Bundesministerium f\u00fcr Bildung und Forschung","ror":"https://ror.org/04pz7b180"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":22,"referenced_works":["https://openalex.org/W1528193315","https://openalex.org/W1557561422","https://openalex.org/W1580664042","https://openalex.org/W1679133098","https://openalex.org/W1986454448","https://openalex.org/W1999500280","https://openalex.org/W2009775190","https://openalex.org/W2061171222","https://openalex.org/W2094455839","https://openalex.org/W2096314727","https://openalex.org/W2107219179","https://openalex.org/W2126160338","https://openalex.org/W2132598718","https://openalex.org/W2153185479","https://openalex.org/W2154697693","https://openalex.org/W2561675875","https://openalex.org/W2611950219","https://openalex.org/W3163302786","https://openalex.org/W6633355477","https://openalex.org/W6634775351","https://openalex.org/W6637280386","https://openalex.org/W7052536942"],"related_works":["https://openalex.org/W2057033141","https://openalex.org/W4252103056","https://openalex.org/W2917823318","https://openalex.org/W2917572814","https://openalex.org/W4242858628","https://openalex.org/W2979406678","https://openalex.org/W2048485245","https://openalex.org/W2915857720","https://openalex.org/W2916715723","https://openalex.org/W3006129753"],"abstract_inverted_index":{"Partial":[0],"evaluation":[1],"allows":[2],"for":[3],"specialization":[4],"of":[5,27,56,58,95,114,132],"program":[6],"fragments.":[7],"This":[8],"can":[9,63,71,83,89,103],"be":[10,64,76,90,104],"realized":[11],"by":[12],"staging,":[13],"where":[14],"one":[15],"fragment":[16],"is":[17,30,122],"executed":[18],"earlier":[19],"than":[20],"its":[21],"surrounding":[22],"code.":[23],"However,":[24],"taking":[25],"advantage":[26],"these":[28],"capabilities":[29],"often":[31],"a":[32,40,124],"cumbersome":[33],"endeavor.":[34],"In":[35],"this":[36],"paper,":[37],"we":[38],"present":[39],"new":[41],"metaprogramming":[42,117],"concept":[43,118],"using":[44],"staging":[45],"parameters":[46,62],"that":[47],"are":[48],"first-class":[49],"citizen":[50],"entities":[51],"and":[52,78,108],"define":[53,67,107],"the":[54,59,93,115],"order":[55],"execution":[57,133],"program.":[60],"Staging":[61],"used":[65,105],"to":[66,75,106],"MetaML-like":[68],"quotations,":[69],"but":[70],"also":[72],"allow":[73],"stages":[74],"created":[77],"resolved":[79],"dynamically.":[80],"The":[81],"programmer":[82],"write":[84],"generic,":[85],"polyvariant":[86],"code":[87,120,129],"which":[88,121],"reused":[91],"in":[92,130],"context":[94],"different":[96],"stages.":[97],"We":[98],"demonstrate":[99],"how":[100],"our":[101],"approach":[102],"apply":[109],"domain-specific":[110],"optimizations.":[111],"Our":[112],"implementation":[113],"proposed":[116],"generates":[119],"on":[123],"par":[125],"with":[126],"templated":[127],"C++":[128],"terms":[131],"time.":[134]},"counts_by_year":[{"year":2020,"cited_by_count":1},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":3}],"updated_date":"2026-04-05T17:49:38.594831","created_date":"2025-10-10T00:00:00"}
