{"id":"https://openalex.org/W7131410554","doi":"https://doi.org/10.48550/arxiv.2602.19951","title":"Taming Scope Extrusion in Gradual Imperative Metaprogramming","display_name":"Taming Scope Extrusion in Gradual Imperative Metaprogramming","publication_year":2026,"publication_date":"2026-02-23","ids":{"openalex":"https://openalex.org/W7131410554","doi":"https://doi.org/10.48550/arxiv.2602.19951"},"language":null,"primary_location":{"id":"doi:10.48550/arxiv.2602.19951","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2602.19951","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},"type":"preprint","indexed_in":["datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://doi.org/10.48550/arxiv.2602.19951","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5126833069","display_name":"Tianyu Chen","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Chen, Tianyu","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5119924732","display_name":"Darshal Shetty","orcid":"https://orcid.org/0000-0001-8365-5763"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Shetty, Darshal","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5033999458","display_name":"Jeremy G. Siek","orcid":"https://orcid.org/0000-0002-9894-4856"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Siek, Jeremy G.","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5023236233","display_name":"Chao-Hong Chen","orcid":"https://orcid.org/0000-0002-9314-8105"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Chen, Chao-Hong","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5061732461","display_name":"Weixi Ma","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Ma, Weixi","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5061182324","display_name":"Arnaud Venet","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Venet, Arnaud","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5109885075","display_name":"Rocky Liu","orcid":"https://orcid.org/0009-0002-8309-9642"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Liu, Rocky","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"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.5315999984741211,"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.5315999984741211,"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.1809999942779541,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.07259999960660934,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/metaprogramming","display_name":"Metaprogramming","score":0.7680000066757202},{"id":"https://openalex.org/keywords/scope","display_name":"Scope (computer science)","score":0.5909000039100647},{"id":"https://openalex.org/keywords/scripting-language","display_name":"Scripting language","score":0.5681999921798706},{"id":"https://openalex.org/keywords/type-safety","display_name":"Type safety","score":0.5568000078201294},{"id":"https://openalex.org/keywords/exception-handling","display_name":"Exception handling","score":0.44929999113082886},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.38519999384880066},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.38100001215934753},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.3686999976634979},{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.3580000102519989}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7936999797821045},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7781000137329102},{"id":"https://openalex.org/C35390924","wikidata":"https://www.wikidata.org/wiki/Q661075","display_name":"Metaprogramming","level":2,"score":0.7680000066757202},{"id":"https://openalex.org/C2778012447","wikidata":"https://www.wikidata.org/wiki/Q1034415","display_name":"Scope (computer science)","level":2,"score":0.5909000039100647},{"id":"https://openalex.org/C61423126","wikidata":"https://www.wikidata.org/wiki/Q187432","display_name":"Scripting language","level":2,"score":0.5681999921798706},{"id":"https://openalex.org/C44779574","wikidata":"https://www.wikidata.org/wiki/Q736866","display_name":"Type safety","level":2,"score":0.5568000078201294},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.45750001072883606},{"id":"https://openalex.org/C145428669","wikidata":"https://www.wikidata.org/wiki/Q471748","display_name":"Exception handling","level":2,"score":0.44929999113082886},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.38519999384880066},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.38100001215934753},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.3686999976634979},{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.3580000102519989},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.29190000891685486},{"id":"https://openalex.org/C2779777834","wikidata":"https://www.wikidata.org/wiki/Q4202277","display_name":"Enforcement","level":2,"score":0.27959999442100525},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.2784999907016754},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.2775000035762787},{"id":"https://openalex.org/C93682546","wikidata":"https://www.wikidata.org/wiki/Q1056428","display_name":"Type theory","level":3,"score":0.27630001306533813},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.2761000096797943},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.27079999446868896},{"id":"https://openalex.org/C60051680","wikidata":"https://www.wikidata.org/wiki/Q30267","display_name":"Aspect-oriented programming","level":3,"score":0.2703999876976013},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.2687999904155731},{"id":"https://openalex.org/C83852419","wikidata":"https://www.wikidata.org/wiki/Q2713292","display_name":"Subtyping","level":2,"score":0.2687000036239624},{"id":"https://openalex.org/C2777293101","wikidata":"https://www.wikidata.org/wiki/Q235086","display_name":"Smalltalk","level":3,"score":0.26829999685287476},{"id":"https://openalex.org/C94922259","wikidata":"https://www.wikidata.org/wiki/Q33215","display_name":"Constructed language","level":2,"score":0.26499998569488525},{"id":"https://openalex.org/C52146309","wikidata":"https://www.wikidata.org/wiki/Q7431116","display_name":"Schema (genetic algorithms)","level":2,"score":0.2621999979019165}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.48550/arxiv.2602.19951","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2602.19951","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"Preprint"}],"best_oa_location":{"id":"doi:10.48550/arxiv.2602.19951","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2602.19951","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":[],"abstract_inverted_index":{"Metaprogramming":[0],"enables":[1],"the":[2,11,35,80,118,126,143,147,154,213,219],"generation":[3],"of":[4,38,120,130,146,182,225],"performant":[5],"code,":[6],"while":[7,89],"gradual":[8,70,82],"typing":[9],"facilitates":[10],"smooth":[12],"migration":[13],"from":[14],"untyped":[15],"scripts":[16],"to":[17,60,156,186],"robust":[18],"statically":[19,104,135,159],"typed":[20,105,136],"programs.":[21],"However,":[22],"combining":[23],"these":[24,66],"features":[25],"with":[26],"imperative":[27],"state":[28],"-":[29,33],"specifically":[30],"mutable":[31,87],"references":[32,88],"introduces":[34,110],"classic":[36],"peril":[37],"scope":[39,91,121,131,203,215],"extrusion,":[40],"where":[41],"code":[42,188],"fragments":[43],"containing":[44],"free":[45],"variables":[46],"escape":[47],"their":[48],"defining":[49],"lexical":[50],"context.":[51],"While":[52],"static":[53],"type":[54,200],"systems":[55],"have":[56],"employed":[57],"environment":[58,114,148],"classifiers":[59],"successfully":[61],"tamed":[62],"this":[63],"interaction,":[64],"enforcing":[65],"invariants":[67],"in":[68,151,172,231],"a":[69,97,134,173,208],"language":[71,84,155],"remains":[72,222],"an":[73,180],"open":[74],"challenge.":[75],"This":[76],"paper":[77],"presents":[78],"$\u03bb^{\u03b1,\\star}_{\\text{Ref}}$,":[79,124,152],"first":[81,127],"metaprogramming":[83],"that":[85,178,197,218],"supports":[86],"guaranteeing":[90],"safety.":[92,204],"To":[93],"put":[94],"$\u03bb^{\u03b1,\\star}_{\\text{Ref}}$":[95,198],"on":[96],"firm":[98],"foundation,":[99],"we":[100,206],"also":[101],"develop":[102],"its":[103],"sister":[106],"language,":[107],"$\u03bb^\u03b1_{\\text{Ref}}$,":[108],"which":[109],"unrestricted":[111],"subtyping":[112],"for":[113,123,133,212],"classifiers.":[115],"We":[116,195],"mechanize":[117],"proof":[119,129],"safety":[122,132,201],"contributing":[125],"mechanized":[128,230],"language.":[137],"Our":[138],"key":[139],"innovation,":[140],"however,":[141],"is":[142,169],"dynamic":[144,167,214],"enforcement":[145,168],"classifier":[149,190],"discipline":[150],"enabling":[153],"mediate":[157],"between":[158],"verified":[160,164],"scopes":[161],"and":[162,192,202],"dynamically":[163],"scopes.":[165],"The":[166],"carried":[170],"out":[171],"novel":[174],"cast":[175],"calculus":[176],"$\\mathrm{CC}^{\u03b1,\\star}_{\\text{Ref}}$":[177],"uses":[179],"extension":[181],"Henglein's":[183],"Coercion":[184],"Calculus":[185],"handle":[187],"types,":[189],"polymorphism,":[191],"subtype":[193],"constraints.":[194],"prove":[196],"satisfies":[199],"Finally,":[205],"provide":[207],"space-efficient":[209],"implementation":[210],"strategy":[211],"checks,":[216],"ensuring":[217],"runtime":[220],"overhead":[221],"practical.":[223],"All":[224],"our":[226],"results":[227],"are":[228],"fully":[229],"Agda.":[232]},"counts_by_year":[],"updated_date":"2026-07-15T05:50:42.429089","created_date":"2026-02-26T00:00:00"}
