{"id":"https://openalex.org/W2026667713","doi":"https://doi.org/10.1145/1449913.1449935","title":"Polymorphic embedding of dsls","display_name":"Polymorphic embedding of dsls","publication_year":2008,"publication_date":"2008-10-19","ids":{"openalex":"https://openalex.org/W2026667713","doi":"https://doi.org/10.1145/1449913.1449935","mag":"2026667713"},"language":"en","primary_location":{"id":"doi:10.1145/1449913.1449935","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1449913.1449935","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 7th international conference on Generative programming and component engineering","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/A5091787285","display_name":"Christian Hofer","orcid":"https://orcid.org/0000-0003-4271-0388"},"institutions":[{"id":"https://openalex.org/I204337017","display_name":"Aarhus University","ror":"https://ror.org/01aj84f44","country_code":"DK","type":"education","lineage":["https://openalex.org/I204337017"]}],"countries":["DK"],"is_corresponding":false,"raw_author_name":"Christian Hofer","raw_affiliation_strings":["University of Aarhus, Aarhus, Denmark"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Aarhus, Aarhus, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5049077225","display_name":"Klaus Ostermann","orcid":"https://orcid.org/0000-0001-5294-5506"},"institutions":[{"id":"https://openalex.org/I204337017","display_name":"Aarhus University","ror":"https://ror.org/01aj84f44","country_code":"DK","type":"education","lineage":["https://openalex.org/I204337017"]}],"countries":["DK"],"is_corresponding":false,"raw_author_name":"Klaus Ostermann","raw_affiliation_strings":["University of Aarhus, Aarhus, Denmark"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Aarhus, Aarhus, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5045581204","display_name":"Tillmann Rendel","orcid":null},"institutions":[{"id":"https://openalex.org/I204337017","display_name":"Aarhus University","ror":"https://ror.org/01aj84f44","country_code":"DK","type":"education","lineage":["https://openalex.org/I204337017"]}],"countries":["DK"],"is_corresponding":false,"raw_author_name":"Tillmann Rendel","raw_affiliation_strings":["University of Aarhus, Aarhus, Denmark"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Aarhus, Aarhus, Denmark","institution_ids":["https://openalex.org/I204337017"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5104052005","display_name":"Adriaan Moors","orcid":null},"institutions":[{"id":"https://openalex.org/I99464096","display_name":"KU Leuven","ror":"https://ror.org/05f950310","country_code":"BE","type":"education","lineage":["https://openalex.org/I99464096"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Adriaan Moors","raw_affiliation_strings":["Katholieke Universiteit Leuven, Leuven, Belgium","Katholieke Universiteit Leuven, Leuven, Belgium > > > >"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Katholieke Universiteit Leuven, Leuven, Belgium","institution_ids":["https://openalex.org/I99464096"]},{"raw_affiliation_string":"Katholieke Universiteit Leuven, Leuven, Belgium > > > >","institution_ids":["https://openalex.org/I99464096"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":24.0979,"has_fulltext":false,"cited_by_count":124,"citation_normalized_percentile":{"value":0.99502052,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"137","last_page":"148"},"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.9987999796867371,"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.9987999796867371,"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/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.998199999332428,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9936000108718872,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/embedding","display_name":"Embedding","score":0.8617863655090332},{"id":"https://openalex.org/keywords/digital-subscriber-line","display_name":"Digital subscriber line","score":0.8040982484817505},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7778428792953491},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7377674579620361},{"id":"https://openalex.org/keywords/composability","display_name":"Composability","score":0.6647794246673584},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.6470783352851868},{"id":"https://openalex.org/keywords/scala","display_name":"Scala","score":0.5768967866897583},{"id":"https://openalex.org/keywords/modularity","display_name":"Modularity (biology)","score":0.5189654231071472},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.45726004242897034},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.43421435356140137},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.36313703656196594},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.17074915766716003},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.12785163521766663}],"concepts":[{"id":"https://openalex.org/C41608201","wikidata":"https://www.wikidata.org/wiki/Q980509","display_name":"Embedding","level":2,"score":0.8617863655090332},{"id":"https://openalex.org/C201374245","wikidata":"https://www.wikidata.org/wiki/Q104534","display_name":"Digital subscriber line","level":2,"score":0.8040982484817505},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7778428792953491},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7377674579620361},{"id":"https://openalex.org/C2778814252","wikidata":"https://www.wikidata.org/wiki/Q5156715","display_name":"Composability","level":2,"score":0.6647794246673584},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.6470783352851868},{"id":"https://openalex.org/C109701466","wikidata":"https://www.wikidata.org/wiki/Q460584","display_name":"Scala","level":3,"score":0.5768967866897583},{"id":"https://openalex.org/C2779478453","wikidata":"https://www.wikidata.org/wiki/Q6889748","display_name":"Modularity (biology)","level":2,"score":0.5189654231071472},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.45726004242897034},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.43421435356140137},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.36313703656196594},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.17074915766716003},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.12785163521766663},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C54355233","wikidata":"https://www.wikidata.org/wiki/Q7162","display_name":"Genetics","level":1,"score":0.0},{"id":"https://openalex.org/C76155785","wikidata":"https://www.wikidata.org/wiki/Q418","display_name":"Telecommunications","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/1449913.1449935","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1449913.1449935","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 7th international conference on Generative programming and component engineering","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.212.9311","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.212.9311","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.daimi.au.dk/~ko/papers/gpce50_hofer.pdf","raw_type":"text"},{"id":"pmh:oai:lirias2repo.kuleuven.be:123456789/208353","is_oa":false,"landing_page_url":"https://lirias.kuleuven.be/bitstream/123456789/208353/1/p137-hofer.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4306401954","display_name":"Lirias (KU Leuven)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I99464096","host_organization_name":"KU Leuven","host_organization_lineage":["https://openalex.org/I99464096"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Generative Programming and Component Engineering, Nashville, Tennessee, USA, 19-23 October 2008","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:pure.atira.dk:publications/cf1132e0-e3cb-11dd-8fc3-000ea68e967b","is_oa":false,"landing_page_url":"https://pure.au.dk/portal/en/publications/cf1132e0-e3cb-11dd-8fc3-000ea68e967b","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Hofer, C, Ostermann, K, Rendel, T & Moors, A 2008, Polymorphic Embedding of DSLs. in Y Smaragdakis & J G Siek (eds), Proceedings of the 7th international conference on Generative programming and component engineering : SESSION: Technical papers 5. Association for Computing Machinery, pp. 137-148, Generative Programming and Component Engineering (GPCE'08), Nashville, Tennessee, United States, 19/10/2008.","raw_type":"info:eu-repo/semantics/publishedVersion"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.46000000834465027,"display_name":"Quality Education","id":"https://metadata.un.org/sdg/4"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":39,"referenced_works":["https://openalex.org/W1495226832","https://openalex.org/W1498739950","https://openalex.org/W1524613989","https://openalex.org/W1529733759","https://openalex.org/W1577182889","https://openalex.org/W1579220051","https://openalex.org/W1595243393","https://openalex.org/W1649645444","https://openalex.org/W1650987719","https://openalex.org/W1839902311","https://openalex.org/W1948370231","https://openalex.org/W1965664509","https://openalex.org/W1984514567","https://openalex.org/W1997644097","https://openalex.org/W2009464583","https://openalex.org/W2009775190","https://openalex.org/W2014596857","https://openalex.org/W2016799432","https://openalex.org/W2026049208","https://openalex.org/W2043548135","https://openalex.org/W2055947235","https://openalex.org/W2057779758","https://openalex.org/W2061669176","https://openalex.org/W2061786858","https://openalex.org/W2070821087","https://openalex.org/W2132750992","https://openalex.org/W2150101804","https://openalex.org/W2156426055","https://openalex.org/W2168374629","https://openalex.org/W2176580510","https://openalex.org/W2291292811","https://openalex.org/W2483146133","https://openalex.org/W2913972837","https://openalex.org/W2914693551","https://openalex.org/W3103200974","https://openalex.org/W6636798876","https://openalex.org/W6638767560","https://openalex.org/W6640689537","https://openalex.org/W6777360823"],"related_works":["https://openalex.org/W2109776807","https://openalex.org/W2119542776","https://openalex.org/W2460228634","https://openalex.org/W2014596857","https://openalex.org/W2582410692","https://openalex.org/W2140083133","https://openalex.org/W1485300234","https://openalex.org/W2058907533","https://openalex.org/W2258960507","https://openalex.org/W3124124991"],"abstract_inverted_index":{"The":[0],"influential":[1],"pure":[2,82],"embedding":[3,6,41,61,83],"methodology":[4],"of":[5,32,42,48,81],"domain-specific":[7,36],"languages":[8],"(DSLs)":[9],"as":[10,54],"libraries":[11],"into":[12],"a":[13,24,49],"general-purpose":[14],"host":[15],"language":[16,68],"forces":[17],"the":[18,29,66,73,87],"DSL":[19,50],"designer":[20],"to":[21,23],"commit":[22],"single":[25],"semantics.":[26],"This":[27],"precludes":[28],"subsequent":[30],"addition":[31],"compilation,":[33],"optimization":[34],"or":[35],"analyses.":[37],"We":[38],"propose":[39],"polymorphic":[40,60,71],"DSLs,":[43],"where":[44],"many":[45],"different":[46],"interpretations":[47],"can":[51,62],"be":[52,63],"provided":[53],"reusable":[55],"components,":[56],"and":[57,78],"show":[58],"how":[59],"realized":[64],"in":[65],"programming":[67],"Scala.":[69],"With":[70],"embedding,":[72],"static":[74],"type-safety,":[75],"modularity,":[76],"composability":[77],"rapid":[79],"prototyping":[80],"are":[84],"reconciled":[85],"with":[86],"flexibility":[88],"attainable":[89],"by":[90],"external":[91],"toolchains.":[92]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":5},{"year":2018,"cited_by_count":4},{"year":2017,"cited_by_count":15},{"year":2016,"cited_by_count":6},{"year":2015,"cited_by_count":4},{"year":2014,"cited_by_count":7},{"year":2013,"cited_by_count":18},{"year":2012,"cited_by_count":15}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
