{"id":"https://openalex.org/W2058442534","doi":"https://doi.org/10.1145/2814204.2814209","title":"Modular interpreters for the masses: implicit context propagation using object algebras","display_name":"Modular interpreters for the masses: implicit context propagation using object algebras","publication_year":2015,"publication_date":"2015-10-26","ids":{"openalex":"https://openalex.org/W2058442534","doi":"https://doi.org/10.1145/2814204.2814209","mag":"2058442534"},"language":"en","primary_location":{"id":"doi:10.1145/2814204.2814209","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2814204.2814209","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"},"type":"preprint","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://research.rug.nl/en/publications/badeb28a-911d-4537-b8ef-71bf302a0f45","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5033293711","display_name":"Pablo Inostroza","orcid":"https://orcid.org/0009-0000-0268-2138"},"institutions":[{"id":"https://openalex.org/I1341640284","display_name":"Centrum Wiskunde & Informatica","ror":"https://ror.org/00x7ekv49","country_code":"NL","type":"facility","lineage":["https://openalex.org/I1341640284","https://openalex.org/I2800991832"]}],"countries":["NL"],"is_corresponding":true,"raw_author_name":"Pablo Inostroza","raw_affiliation_strings":["CWI, Netherlands"],"affiliations":[{"raw_affiliation_string":"CWI, Netherlands","institution_ids":["https://openalex.org/I1341640284"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5014852863","display_name":"Tijs van der Storm","orcid":"https://orcid.org/0000-0001-8853-7934"},"institutions":[{"id":"https://openalex.org/I1341640284","display_name":"Centrum Wiskunde & Informatica","ror":"https://ror.org/00x7ekv49","country_code":"NL","type":"facility","lineage":["https://openalex.org/I1341640284","https://openalex.org/I2800991832"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Tijs van der Storm","raw_affiliation_strings":["CWI, Netherlands"],"affiliations":[{"raw_affiliation_string":"CWI, Netherlands","institution_ids":["https://openalex.org/I1341640284"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5033293711"],"corresponding_institution_ids":["https://openalex.org/I1341640284"],"apc_list":null,"apc_paid":null,"fwci":3.1198,"has_fulltext":false,"cited_by_count":9,"citation_normalized_percentile":{"value":0.92771126,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"171","last_page":"180"},"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9987000226974487,"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.996999979019165,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/interpreter","display_name":"Interpreter","score":0.8707071542739868},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8476805686950684},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7258727550506592},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.554012656211853},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.5094779133796692},{"id":"https://openalex.org/keywords/object","display_name":"Object (grammar)","score":0.438687264919281},{"id":"https://openalex.org/keywords/type-safety","display_name":"Type safety","score":0.4346054196357727},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.24099624156951904}],"concepts":[{"id":"https://openalex.org/C122783720","wikidata":"https://www.wikidata.org/wiki/Q183065","display_name":"Interpreter","level":2,"score":0.8707071542739868},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8476805686950684},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7258727550506592},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.554012656211853},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.5094779133796692},{"id":"https://openalex.org/C2781238097","wikidata":"https://www.wikidata.org/wiki/Q175026","display_name":"Object (grammar)","level":2,"score":0.438687264919281},{"id":"https://openalex.org/C44779574","wikidata":"https://www.wikidata.org/wiki/Q736866","display_name":"Type safety","level":2,"score":0.4346054196357727},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.24099624156951904},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1145/2814204.2814209","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2814204.2814209","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences","raw_type":"proceedings-article"},{"id":"pmh:oai:pure.rug.nl:openaire/badeb28a-911d-4537-b8ef-71bf302a0f45","is_oa":true,"landing_page_url":"https://research.rug.nl/en/publications/badeb28a-911d-4537-b8ef-71bf302a0f45","pdf_url":null,"source":{"id":"https://openalex.org/S4306400420","display_name":"University of Groningen research database (University of Groningen / Centre for Information Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I169381384","host_organization_name":"University of Groningen","host_organization_lineage":["https://openalex.org/I169381384"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Inostroza, P & van der Storm, T 2016, 'Modular Interpreters for the Masses Implicit Context Propagation using Object Algebras', Sigplan notices, vol. 51, no. 3, pp. 171-180. https://doi.org/10.1145/2814204.2814209","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:cwi:oai:cwi.nl:23997","is_oa":true,"landing_page_url":"https://ir.cwi.nl/pub/23997/Fulltext","pdf_url":null,"source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"info:eu-repo/semantics/conferencepaper"},{"id":"pmh:oai:HAL:hal-01261476v1","is_oa":false,"landing_page_url":"https://inria.hal.science/hal-01261476","pdf_url":null,"source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"GPCE 2015 - Proceedings of the 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, 2015, Pittsburgh, United States. pp.171 - 180, &#x27E8;10.1145/2814204.2814209&#x27E9;","raw_type":"Conference papers"},{"id":"pmh:oai:cwi.nl:23997","is_oa":false,"landing_page_url":"https://ir.cwi.nl/pub/23997","pdf_url":null,"source":{"id":"https://openalex.org/S7407055335","display_name":"Centrum Wiskunde & Informatica (CWI), the national research institute for mathematics and computer science in the Netherlands","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"info:eu-repo/semantics/conferenceObject"}],"best_oa_location":{"id":"pmh:oai:pure.rug.nl:openaire/badeb28a-911d-4537-b8ef-71bf302a0f45","is_oa":true,"landing_page_url":"https://research.rug.nl/en/publications/badeb28a-911d-4537-b8ef-71bf302a0f45","pdf_url":null,"source":{"id":"https://openalex.org/S4306400420","display_name":"University of Groningen research database (University of Groningen / Centre for Information Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I169381384","host_organization_name":"University of Groningen","host_organization_lineage":["https://openalex.org/I169381384"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Inostroza, P & van der Storm, T 2016, 'Modular Interpreters for the Masses Implicit Context Propagation using Object Algebras', Sigplan notices, vol. 51, no. 3, pp. 171-180. https://doi.org/10.1145/2814204.2814209","raw_type":"info:eu-repo/semantics/publishedVersion"},"sustainable_development_goals":[{"display_name":"Quality Education","id":"https://metadata.un.org/sdg/4","score":0.7900000214576721}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":34,"referenced_works":["https://openalex.org/W46322832","https://openalex.org/W277828896","https://openalex.org/W300550493","https://openalex.org/W1514378708","https://openalex.org/W1586657822","https://openalex.org/W1893810794","https://openalex.org/W1967825172","https://openalex.org/W1995674161","https://openalex.org/W2014021676","https://openalex.org/W2021978684","https://openalex.org/W2032910840","https://openalex.org/W2036632668","https://openalex.org/W2040581748","https://openalex.org/W2043216020","https://openalex.org/W2060160091","https://openalex.org/W2080648611","https://openalex.org/W2084115964","https://openalex.org/W2141576692","https://openalex.org/W2150275961","https://openalex.org/W2159611653","https://openalex.org/W2168986107","https://openalex.org/W2280114176","https://openalex.org/W2281310552","https://openalex.org/W2294229253","https://openalex.org/W2398830545","https://openalex.org/W2482871625","https://openalex.org/W2912273059","https://openalex.org/W2968826346","https://openalex.org/W3216914720","https://openalex.org/W4231733625","https://openalex.org/W4235070894","https://openalex.org/W4253843453","https://openalex.org/W6601876141","https://openalex.org/W6610443805"],"related_works":["https://openalex.org/W2088766201","https://openalex.org/W3000294674","https://openalex.org/W2104216136","https://openalex.org/W1987203566","https://openalex.org/W2054577134","https://openalex.org/W1910488985","https://openalex.org/W2119857670","https://openalex.org/W2505998851","https://openalex.org/W1887681675","https://openalex.org/W4256113209"],"abstract_inverted_index":{"Modular":[0],"interpreters":[1,14,29,46,80,85,92],"have":[2,94],"the":[3,105,108,111],"potential":[4],"to":[5,32,69,159],"achieve":[6],"component-based":[7,121],"language":[8,13,28,36,122],"development:":[9],"instead":[10],"of":[11,110,120,153],"writing":[12],"from":[15,21],"scratch,":[16],"they":[17],"can":[18,86,140],"be":[19,87,141],"assembled":[20],"reusable,":[22],"semantic":[23],"building":[24],"blocks.":[25],"Unfortunately,":[26],"traditional":[27],"are":[30,101],"hard":[31],"extend":[33],"because":[34],"different":[35,40],"constructs":[37,56],"may":[38],"require":[39,57],"interpreter":[41],"signatures.":[42],"For":[43],"instance,":[44],"arithmetic":[45],"produce":[47],"a":[48,66,117,150],"value":[49],"without":[50],"any":[51],"context":[52,75,147],"information,":[53],"whereas":[54],"binding":[55],"an":[58,95],"additional":[59,99],"environment.":[60],"In":[61],"this":[62,70],"paper,":[63],"we":[64],"present":[65],"practical":[67],"solution":[68],"problem":[71],"based":[72],"on":[73],"implicit":[74,146],"propagation.":[76],"By":[77],"structuring":[78],"denotational-style":[79],"as":[81],"Object":[82],"Algebras,":[83],"base":[84,112],"retroactively":[88],"lifted":[89],"into":[90],"new":[91],"that":[93],"extended":[96],"signature.":[97],"The":[98,124],"parameters":[100],"implicitly":[102],"propagated":[103],"behind":[104],"scenes,":[106],"through":[107],"evaluation":[109],"interpreter.":[113],"Interpreter":[114],"lifting":[115],"enables":[116],"flexible":[118],"style":[119],"development.":[123],"technique":[125],"works":[126],"in":[127],"mainstream":[128],"object-oriented":[129],"languages,":[130],"does":[131],"not":[132],"sacrifice":[133],"type":[134],"safety":[135],"or":[136],"separate":[137],"compilation,":[138],"and":[139,156],"easily":[142],"automated.":[143],"We":[144],"illustrate":[145],"propagation":[148],"using":[149],"modular":[151],"definition":[152],"Featherweight":[154],"Java":[155],"its":[157],"extension":[158],"support":[160],"side-effects.":[161]},"counts_by_year":[{"year":2022,"cited_by_count":1},{"year":2020,"cited_by_count":1},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":1},{"year":2016,"cited_by_count":4}],"updated_date":"2026-03-06T13:50:29.536080","created_date":"2025-10-10T00:00:00"}
