{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,19]],"date-time":"2026-06-19T02:37:54Z","timestamp":1781836674606,"version":"3.54.5"},"reference-count":95,"publisher":"Association for Computing Machinery (ACM)","issue":"PLDI","license":[{"start":{"date-parts":[[2024,6,20]],"date-time":"2024-06-20T00:00:00Z","timestamp":1718841600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"NRF","award":["2022R1A2C2003660115,2021R1A5A1021944"],"award-info":[{"award-number":["2022R1A2C2003660115,2021R1A5A1021944"]}]},{"name":"IITP MSIT","award":["2022-0-00460,2023-2020-0-01819"],"award-info":[{"award-number":["2022-0-00460,2023-2020-0-01819"]}]},{"DOI":"10.13039\/100004358","name":"Samsung Electronics Co., Ltd","doi-asserted-by":"crossref","award":["G01210570"],"award-info":[{"award-number":["G01210570"]}],"id":[{"id":"10.13039\/100004358","id-type":"DOI","asserted-by":"crossref"}]},{"name":"EHOP","award":["MR\/T043830\/1"],"award-info":[{"award-number":["MR\/T043830\/1"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2024,6,20]]},"abstract":"<jats:p>WebAssembly (Wasm) is a portable low-level bytecode language and virtual machine that has seen increasing use in a variety of ecosystems. Its specification is unusually rigorous \u2013 including a full formal semantics for the language \u2013 and every new feature must be specified in this formal semantics, in prose, and in the official reference interpreter before it can be standardized. With the growing size of the language, this manual process with its redundancies has become laborious and error-prone, and in this work, we offer a solution.<\/jats:p>\n          <jats:p>We present SpecTec, a domain-specific language (DSL) and toolchain that facilitates both the Wasm specification and the generation of artifacts necessary to standardize new features. SpecTec serves as a single source of truth \u2014 from a SpecTec definition of the Wasm semantics, we can generate a typeset specification, including formal definitions and prose pseudocode descriptions, and a meta-level interpreter. Further backends for test generation and interactive theorem proving are planned. We evaluate SpecTec\u2019s ability to represent the latest Wasm 2.0 and show that the generated meta-level interpreter passes 100% of the applicable official test suite. We show that SpecTec is highly effective at discovering and preventing errors by detecting historical errors in the specification that have been corrected and ten errors in five proposals ready for inclusion in the next version of Wasm. Our ultimate aim is that SpecTec should be adopted by the Wasm standards community and used to specify future versions of the standard.<\/jats:p>","DOI":"10.1145\/3656440","type":"journal-article","created":{"date-parts":[[2024,6,20]],"date-time":"2024-06-20T16:27:20Z","timestamp":1718900840000},"page":"1559-1584","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":14,"title":["Bringing the WebAssembly Standard up to Speed with SpecTec"],"prefix":"10.1145","volume":"8","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-5766-2035","authenticated-orcid":false,"given":"Dongjun","family":"Youn","sequence":"first","affiliation":[{"name":"KAIST, Daejeon, South Korea"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1889-3797","authenticated-orcid":false,"given":"Wonho","family":"Shin","sequence":"additional","affiliation":[{"name":"KAIST, Daejeon, South Korea"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0009-0003-9757-9994","authenticated-orcid":false,"given":"Jaehyun","family":"Lee","sequence":"additional","affiliation":[{"name":"KAIST, Daejeon, South Korea"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0019-9772","authenticated-orcid":false,"given":"Sukyoung","family":"Ryu","sequence":"additional","affiliation":[{"name":"KAIST, Daejeon, South Korea"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3753-6821","authenticated-orcid":false,"given":"Joachim","family":"Breitner","sequence":"additional","affiliation":[{"name":"Independent, Freiburg, Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-4187-0585","authenticated-orcid":false,"given":"Philippa","family":"Gardner","sequence":"additional","affiliation":[{"name":"Imperial College London, London, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1360-4714","authenticated-orcid":false,"given":"Sam","family":"Lindley","sequence":"additional","affiliation":[{"name":"University of Edinburgh, Edinburgh, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7755-2303","authenticated-orcid":false,"given":"Matija","family":"Pretnar","sequence":"additional","affiliation":[{"name":"University of Ljubljana, Ljubljana, Slovenia"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-4391-1214","authenticated-orcid":false,"given":"Xiaojia","family":"Rao","sequence":"additional","affiliation":[{"name":"Imperial College London, London, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0596-877X","authenticated-orcid":false,"given":"Conrad","family":"Watt","sequence":"additional","affiliation":[{"name":"University of Cambridge, Cambridge, United Kingdom"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3137-3160","authenticated-orcid":false,"given":"Andreas","family":"Rossberg","sequence":"additional","affiliation":[{"name":"Independent, Munich, Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2024,6,20]]},"reference":[{"key":"e_1_3_1_2_2","unstructured":"2022. ESMeta: An ECMAScript specification metalanguage used for automatically generating language-based tools. https:\/\/github.com\/es-meta\/esmeta"},{"key":"e_1_3_1_3_2","author":"Ahn Heejin","unstructured":"Heejin Ahn and WebAssembly Community Group. 2023. Exception Handling Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/exception-handling\/","journal-title":"Exception Handling Proposal for WebAssembly"},{"key":"e_1_3_1_4_2","author":"Rossberg Andreas","year":"2021","unstructured":"Andreas Rossberg. 2021. Fix variable name typos. https:\/\/github.com\/WebAssembly\/spec\/commit\/4353b29","journal-title":"Fix variable name typos"},{"key":"e_1_3_1_5_2","author":"Rossberg Andreas","year":"2022","unstructured":"Andreas Rossberg. 2022. Add missing case for declarative elem segments. https:\/\/github.com\/WebAssembly\/spec\/commit\/ff149b4","journal-title":"Add missing case for declarative elem segments"},{"key":"e_1_3_1_6_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg. 2023. Fix reduction rule for label. https:\/\/github.com\/WebAssembly\/spec\/commit\/8f5c489","journal-title":"Fix reduction rule for label"},{"key":"e_1_3_1_7_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg. 2023. Remove an obsolete exec step. https:\/\/github.com\/WebAssembly\/spec\/commit\/f54b5b8","journal-title":"Remove an obsolete exec step"},{"key":"e_1_3_1_8_2","doi-asserted-by":"publisher","DOI":"10.1145\/3158104"},{"key":"e_1_3_1_9_2","author":"Visness Ben","year":"2023","unstructured":"Ben Visness. 2023. Add missing type to elem.drop and store soundness. https:\/\/github.com\/WebAssembly\/spec\/commit\/5b18d52","journal-title":"Add missing type to elem.drop and store soundness"},{"key":"e_1_3_1_10_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-03359-9_11"},{"key":"e_1_3_1_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/2535838.2535876"},{"key":"e_1_3_1_12_2","author":"Bogd\u0103na\u015f Denis","year":"2015","unstructured":"Denis Bogd\u0103na\u015f and Grigore Ro\u015fu. 2015. K-Java: A Complete Semantics of Java. In Proceedings of the Symposium on Principles of Programming Languages (POPL).","journal-title":"Proceedings of the Symposium on Principles of Programming Languages (POPL)"},{"key":"e_1_3_1_13_2","doi-asserted-by":"publisher","DOI":"10.24963\/ijcai.2023\/736"},{"key":"e_1_3_1_14_2","author":"Sam Clegg and WebAssembly Community Group","year":"2023","unstructured":"Sam Clegg and WebAssembly Community Group. 2023. Extended Constant Expressions Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/extended-const\/","journal-title":"Extended Constant Expressions Proposal for WebAssembly"},{"key":"e_1_3_1_15_2","first-page":"337","author":"De Moura Leonardo","year":"2008","unstructured":"De Moura, Leonardo and Bj\u00f8rner, Nikolaj. 2008. Z3: An Efficient SMT Solver (TACAS\u201908\/ETAPS\u201908). Springer-Verlag, 337\u2013340.","journal-title":"(TACAS\u201908\/ETAPS\u201908)"},{"key":"e_1_3_1_16_2","author":"Youn Dongjun","year":"2023","unstructured":"Dongjun Youn. 2023. Add missing access to current frame in prose. https:\/\/github.com\/WebAssembly\/spec\/commit\/be820b2","journal-title":"Add missing access to current frame in prose"},{"key":"e_1_3_1_17_2","author":"Youn Dongjun","year":"2023","unstructured":"Dongjun Youn. 2023. Fix spec for execution of struct.new, array.new_fixed and br_on_cast(_fail). https:\/\/github.com\/WebAssembly\/gc\/pull\/456","journal-title":"Fix spec for execution of struct.new, array.new_fixed and br_on_cast(_fail)"},{"key":"e_1_3_1_18_2","unstructured":"ECMA International. 2023. ECMA-262 14th edition ECMAScript \u00ae2023 Language Specification. https:\/\/262.ecma-international.org"},{"key":"e_1_3_1_19_2","author":"Rossberg Andreas","year":"2022","unstructured":"Andreas Rossberg (editor). 2022. WebAssembly Specification (Release 2.0). https:\/\/webassembly.github.io\/spec\/core\/","journal-title":"WebAssembly Specification (Release 2.0)"},{"key":"e_1_3_1_20_2","author":"Ellison Chucky","year":"2012","unstructured":"Chucky Ellison and Grigore Ro\u015fu. 2012. An Executable Formal Semantics of C with Applications. In Proceedings of the Symposium on Principles of Programming Languages (POPL).","journal-title":"Proceedings of the Symposium on Principles of Programming Languages (POPL)"},{"key":"e_1_3_1_21_2","author":"Felleisen Matthias","year":"2009","unstructured":"Matthias Felleisen, Robert Bruce Findler, and Matthew Flatt. 2009. Semantics Engineering with PLT Redex. The MIT Press.","journal-title":"Semantics Engineering with PLT Redex"},{"key":"e_1_3_1_22_2","author":"Geller Adam T.","year":"2021","unstructured":"Adam T. Geller. 2021. WASM-Redex. https:\/\/github.com\/atgeller\/WASM-Redex","journal-title":"WASM-Redex"},{"key":"e_1_3_1_23_2","doi-asserted-by":"publisher","DOI":"10.1145\/2830772.2830775"},{"key":"e_1_3_1_24_2","first-page":"126","author":"Guha Arjun","year":"2010","unstructured":"Arjun Guha, Claudiu Saftoiu, and Shriram Krishnamurthi. 2010. The Essence of Javascript. In Proceedings of the 24th European Conference on Object-Oriented Programming (Maribor, Slovenia) (ECOOP\u201910). Springer-Verlag, Berlin, Heidelberg, 126\u2013150.","journal-title":"Proceedings of the 24th European Conference on Object-Oriented Programming (Maribor, Slovenia) (ECOOP\u201910)"},{"key":"e_1_3_1_25_2","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062363"},{"key":"e_1_3_1_26_2","doi-asserted-by":"publisher","DOI":"10.1145\/3302505.3310084"},{"key":"e_1_3_1_27_2","author":"Hickey Pat","year":"2019","unstructured":"Pat Hickey. 2019. Lucet Takes WebAssembly Beyond the Browser. https:\/\/www.fastly.com\/blog\/announcing-lucet-fastly-native-webassembly-compiler-runtime","journal-title":"Lucet Takes WebAssembly Beyond the Browser"},{"key":"e_1_3_1_28_2","unstructured":"Runtime Verification Inc. 2023. KWasm. https:\/\/github.com\/runtimeverification\/wasm-semantics"},{"key":"e_1_3_1_29_2","author":"ISO\/IEC","year":"2018","unstructured":"ISO\/IEC. 2018. ISO\/IEC 9899:2018. https:\/\/www.iso.org\/standard\/74528.html","journal-title":"ISO\/IEC 9899:2018"},{"key":"e_1_3_1_30_2","author":"Lee Jaehyun","year":"2023","unstructured":"Jaehyun Lee. 2023. Dimension mismatch in the premise of array.new_data reduction rule. https:\/\/github.com\/WebAssembly\/gc\/issues\/476","journal-title":"Dimension mismatch in the premise of array.new_data reduction rule"},{"key":"e_1_3_1_31_2","author":"Blandy Jim","year":"2023","unstructured":"Jim Blandy. 2023. Remove stray x indices. https:\/\/github.com\/WebAssembly\/spec\/commit\/e7f6e1c","journal-title":"Remove stray x indices"},{"key":"e_1_3_1_32_2","author":"Cretin Julien","year":"2022","unstructured":"Julien Cretin. 2022. Fix typo in element execution. https:\/\/github.com\/WebAssembly\/spec\/commit\/793b3ff","journal-title":"Fix typo in element execution"},{"key":"e_1_3_1_33_2","author":"Cretin Julien","year":"2022","unstructured":"Julien Cretin. 2022. Fix typos in instruction validation rules. https:\/\/github.com\/WebAssembly\/spec\/commit\/79ef7af","journal-title":"Fix typos in instruction validation rules"},{"key":"e_1_3_1_34_2","doi-asserted-by":"publisher","DOI":"10.1145\/3158154"},{"key":"e_1_3_1_35_2","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796818000151"},{"key":"e_1_3_1_36_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4684-2001-2_9"},{"key":"e_1_3_1_37_2","author":"Winstein Keith","year":"2022","unstructured":"Keith Winstein. 2022. Fix missing immediate on table.set. https:\/\/github.com\/WebAssembly\/spec\/commit\/f6ae547","journal-title":"Fix missing immediate on table.set"},{"key":"e_1_3_1_38_2","doi-asserted-by":"publisher","DOI":"10.1145\/1146809.1146811"},{"key":"e_1_3_1_39_2","author":"Knuth Donald E.","year":"2000","unstructured":"Donald E. Knuth. 2000. Dancing links. arXiv:cs\/0011047","journal-title":"Dancing links"},{"key":"e_1_3_1_40_2","author":"Krebbers Robbert","year":"2015","unstructured":"Robbert Krebbers. 2015. The C standard formalized in Coq. Ph. D. Dissertation. Radboud University Nijmegen.","journal-title":"The C standard formalized in Coq"},{"key":"e_1_3_1_41_2","doi-asserted-by":"publisher","DOI":"10.1145\/2535838.2535841"},{"key":"e_1_3_1_42_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10817-017-9437-1"},{"key":"e_1_3_1_43_2","doi-asserted-by":"publisher","DOI":"10.1145\/1190216.1190245"},{"key":"e_1_3_1_44_2","doi-asserted-by":"publisher","DOI":"10.1145\/1538788.1538814"},{"key":"e_1_3_1_45_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-22863-6_17"},{"key":"e_1_3_1_46_2","doi-asserted-by":"publisher","DOI":"10.1613\/jair.1.11870"},{"key":"e_1_3_1_47_2","author":"Microsoft","year":"2013","unstructured":"Microsoft. 2013. C# Language Specification 5.0. https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=7029","journal-title":"C# Language Specification 5.0"},{"key":"e_1_3_1_48_2","doi-asserted-by":"publisher","DOI":"10.7551\/mitpress\/2319.001.0001"},{"key":"e_1_3_1_49_2","doi-asserted-by":"publisher","DOI":"10.1145\/2628136.2628143"},{"key":"e_1_3_1_50_2","author":"Norrish Michael","year":"1998","unstructured":"Michael Norrish. 1998. C formalised in HOL. Technical Report.","journal-title":"C formalised in HOL"},{"key":"e_1_3_1_51_2","author":"Oracle","year":"2023","unstructured":"Oracle. 2023. Java Language and Virtual Machine Specifications. https:\/\/docs.oracle.com\/javase\/specs\/","journal-title":"Java Language and Virtual Machine Specifications"},{"key":"e_1_3_1_52_2","doi-asserted-by":"publisher","DOI":"10.1145\/2737924.2737991"},{"key":"e_1_3_1_53_2","author":"Park Jihyeok","year":"2022","unstructured":"Jihyeok Park, Seungmin An, and Sukyoung Ryu. 2022. Automatically Deriving JavaScript Static Analyzers from Specifications Using Meta-Level Static Analysis. In Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC\/FSE). Association for Computing Machinery, New York, NY, USA, 1022\u2014-1034.","journal-title":"Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC\/FSE)"},{"key":"e_1_3_1_54_2","first-page":"606","author":"Park Jihyeok","year":"2021","unstructured":"Jihyeok Park, Seungmin An, Wonho Shin, Yusung Sim, and Sukyoung Ryu. 2021. JSTAR: JavaScript Specification Type Analyzer using Refinement. In Proceedings of the 36th IEEE\/ACM International Conference on Automated Software Engineering (ASE). Association for Computing Machinery, New York, NY, USA, 606\u2013616.","journal-title":"Proceedings of the 36th IEEE\/ACM International Conference on Automated Software Engineering (ASE)"},{"key":"e_1_3_1_55_2","first-page":"13","author":"Park Jihyeok","year":"2021","unstructured":"Jihyeok Park, Seungmin An, Dongjun Youn, Gyeongwon Kim, and Sukyoung Ryu. 2021. JEST: N+1-version Differential Testing of Both JavaScript Engines and Specification. In Proceedings of IEEE\/ACM 43rd International Conference on Software Engineering (ICSE). IEEE, Association for Computing Machinery, New York, NY, USA, 13\u201324.","journal-title":"Proceedings of IEEE\/ACM 43rd International Conference on Software Engineering (ICSE)"},{"key":"e_1_3_1_56_2","doi-asserted-by":"publisher","DOI":"10.1145\/3324884.3416632"},{"key":"e_1_3_1_57_2","author":"Sphinx Project","year":"2008","unstructured":"Sphinx Project. 2008. Sphinx. https:\/\/www.sphinx-doc.org\/","journal-title":"Sphinx"},{"key":"e_1_3_1_58_2","author":"R1ru","year":"2023","unstructured":"R1ru. 2023. Pop dummy frame after Invocation. https:\/\/github.com\/WebAssembly\/spec\/commit\/be1f563","journal-title":"Pop dummy frame after Invocation"},{"key":"e_1_3_1_59_2","doi-asserted-by":"publisher","DOI":"10.1145\/3591265"},{"key":"e_1_3_1_60_2","first-page":"161","author":"Reid Alastair","year":"2016","unstructured":"Alastair Reid. 2016. Trustworthy Specifications of ARM\u00ae V8-A and v8-M System Level Architecture. In Proceedings of the 16th Conference on Formal Methods in Computer-Aided Design (Mountain View, California) (FMCAD \u201916). FMCAD Inc, Austin, Texas, 161\u2013168.","journal-title":"Proceedings of the 16th Conference on Formal Methods in Computer-Aided Design (Mountain View, California) (FMCAD \u201916)"},{"key":"e_1_3_1_61_2","author":"Findler Robert Bruce","year":"2023","unstructured":"Robert Bruce Findler and Jacob Matthews. 2023. R6RS Semantics Model and Reference Implementations. https:\/\/www.r6rs.org\/refimpl\/","journal-title":"R6RS Semantics Model and Reference Implementations"},{"key":"e_1_3_1_62_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg. 2023. As low-level as possible, but no lower. https:\/\/icfp23.sigplan.org\/details\/icfp-2023-icfp-keynotes\/38\/As-low-level-as-possible-but-no-lower","journal-title":"As low-level as possible, but no lower"},{"key":"e_1_3_1_63_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg and WebAssembly Community Group. 2023. Function Reference Types Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/function-references\/","journal-title":"Function Reference Types Proposal for WebAssembly"},{"key":"e_1_3_1_64_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg and WebAssembly Community Group. 2023. GC Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/gc\/","journal-title":"GC Proposal for WebAssembly"},{"key":"e_1_3_1_65_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg and WebAssembly Community Group. 2023. Multiple Memories Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/multi-memory\/","journal-title":"Multiple Memories Proposal for WebAssembly"},{"key":"e_1_3_1_66_2","author":"Rossberg Andreas","year":"2023","unstructured":"Andreas Rossberg and WebAssembly Community Group. 2023. Tail Call Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/tail-call\/","journal-title":"Tail Call Proposal for WebAssembly"},{"key":"e_1_3_1_67_2","author":"Schmitt Alan","year":"2019","unstructured":"Alan Schmitt. 2019. Skeletal Semantics. https:\/\/skeletons.inria.fr\/","journal-title":"Skeletal Semantics"},{"key":"e_1_3_1_68_2","author":"Sewell Peter","year":"2007","unstructured":"Peter Sewell and Francesco Zappa Nardelli. 2007. Ott release, version 0.10.9. http:\/\/www.cl.cam.ac.uk\/~pes20\/ott\/","journal-title":"Ott release, version 0.10.9"},{"key":"e_1_3_1_69_2","author":"Smith Ben","year":"2023","unstructured":"Ben Smith, Conrad Watt, and WebAssembly Community Group. 2023. Threads Proposal for WebAssembly. https:\/\/github.com\/WebAssembly\/threads\/","journal-title":"Threads Proposal for WebAssembly"},{"key":"e_1_3_1_70_2","author":"SpecTec Team","year":"2023","unstructured":"SpecTec Team. 2023. https:\/\/github.com\/Wasm-DSL\/spectec. https:\/\/github.com\/Wasm-DSL\/spectec","journal-title":"https:\/\/github.com\/Wasm-DSL\/spectec"},{"issue":"8","key":"e_1_3_1_71_2","article-title":"It\u2019s Time for a New Old Language","volume":"1","author":"Steele Guy","year":"2017","unstructured":"Guy Steele. 2017. It\u2019s Time for a New Old Language. In Principal and Practices of Parallel Programming (ACM SIGPLAN Notices, Vol. 52). 1. Issue 8.","journal-title":"Principal and Practices of Parallel Programming (ACM SIGPLAN Notices, Vol. 52)"},{"key":"e_1_3_1_72_2","author":"Takikawa Asumu","year":"2019","unstructured":"Asumu Takikawa. 2019. wasm-redex. https:\/\/github.com\/takikawa\/wasm-redex","journal-title":"wasm-redex"},{"key":"e_1_3_1_73_2","author":"TC39","year":"2022","unstructured":"TC39. 2022. CI: Integrate ESMeta. https:\/\/github.com\/tc39\/test262\/pull\/3730","journal-title":"CI: Integrate ESMeta"},{"key":"e_1_3_1_74_2","author":"TC39","year":"2022","unstructured":"TC39. 2022. Meta: integrate esmeta type checker into CI. https:\/\/github.com\/tc39\/ecma262\/pull\/2926","journal-title":"Meta: integrate esmeta type checker into CI"},{"key":"e_1_3_1_75_2","author":"Spoofax Team","year":"2010","unstructured":"Spoofax Team. 2010. Spoofax: The Language Designer\u2019s Workbench. https:\/\/spoofax.dev","journal-title":"Spoofax: The Language Designer\u2019s Workbench"},{"key":"e_1_3_1_76_2","author":"SpecTec Team","year":"2024","unstructured":"SpecTec Team. 2024. Automatically Generated WebAssembly Specification. https:\/\/github.com\/Wasm-DSL\/spectec\/blob\/fe709a16901fef96bc603b5d710898436613144f\/spectec\/WebAssembly.pdf","journal-title":"Automatically Generated WebAssembly Specification"},{"key":"e_1_3_1_77_2","doi-asserted-by":"publisher","DOI":"10.5281\/zenodo.10807169"},{"key":"e_1_3_1_78_2","author":"W3C Team","year":"2015","unstructured":"W3C Team. 2015. WebAssembly Community Group. https:\/\/www.w3.org\/community\/webassembly\/","journal-title":"WebAssembly Community Group"},{"key":"e_1_3_1_79_2","author":"Tekeli Ata","year":"2022","unstructured":"Ata Tekeli. 2022. WebAssembly (WASM) in Blockchain. https:\/\/blog.devgenius.io\/webassembly-wasm-in-blockchainf651a8ac767b","journal-title":"WebAssembly (WASM) in Blockchain"},{"key":"e_1_3_1_80_2","author":"Stuart Tom","year":"2023","unstructured":"Tom Stuart. 2023. Add missing value to table.grow reduction rule. https:\/\/github.com\/WebAssembly\/spec\/commit\/3545ad0","journal-title":"Add missing value to table.grow reduction rule"},{"key":"e_1_3_1_81_2","author":"Varda Kenton","year":"2017","unstructured":"Kenton Varda. 2017. Introducing Cloudflare Workers: Run JavaScript Service Workers at the Edge. https:\/\/blog.cloudflare.com\/introducing-cloudflare-workers\/","journal-title":"Introducing Cloudflare Workers: Run JavaScript Service Workers at the Edge"},{"key":"e_1_3_1_82_2","author":"Runtime Verification","year":"2013","unstructured":"Runtime Verification. 2013. K Semantic Framework. https:\/\/kframework.org\/","journal-title":"K Semantic Framework"},{"key":"e_1_3_1_83_2","doi-asserted-by":"publisher","DOI":"10.1109\/MECO55406.2022.9797106"},{"key":"e_1_3_1_84_2","doi-asserted-by":"publisher","DOI":"10.1145\/3167082"},{"key":"e_1_3_1_85_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-90870-6_4"},{"key":"e_1_3_1_86_2","doi-asserted-by":"publisher","DOI":"10.1145\/3591224"},{"key":"e_1_3_1_87_2","author":"WebAssembly Community Group","year":"2023","unstructured":"WebAssembly Community Group. 2023. WebAssembly Core Testsuite. https:\/\/github.com\/WebAssembly\/spec\/tree\/main\/test\/core","journal-title":"WebAssembly Core Testsuite"},{"key":"e_1_3_1_88_2","author":"WebAssembly Community Group","year":"2023","unstructured":"WebAssembly Community Group. 2023. WebAssembly Parser. https:\/\/github.com\/WebAssembly\/spec\/tree\/main\/interpreter\/text","journal-title":"WebAssembly Parser"},{"key":"e_1_3_1_89_2","author":"WebAssembly Community Group","year":"2023","unstructured":"WebAssembly Community Group. 2023. WebAssembly Reference Interpreter: Scripts. https:\/\/github.com\/WebAssembly\/spec\/blob\/main\/interpreter\/README.md#scripts","journal-title":"WebAssembly Reference Interpreter: Scripts"},{"key":"e_1_3_1_90_2","author":"WebAssembly Community Group","year":"2023","unstructured":"WebAssembly Community Group. 2023. WebAssembly specification, reference interpreter, and test suite. https:\/\/github.com\/WebAssembly","journal-title":"WebAssembly specification, reference interpreter, and test suite."},{"key":"e_1_3_1_91_2","author":"Whirlicote","year":"2022","unstructured":"Whirlicote. 2022. Fix naming typo. https:\/\/github.com\/WebAssembly\/spec\/commit\/04beeb7","journal-title":"Fix naming typo"},{"key":"e_1_3_1_92_2","author":"Shin Wonho","year":"2023","unstructured":"Wonho Shin. 2023. Add current frame. https:\/\/github.com\/WebAssembly\/gc\/pull\/484","journal-title":"Add current frame"},{"key":"e_1_3_1_93_2","author":"Shin Wonho","year":"2023","unstructured":"Wonho Shin. 2023. Fix getfiled auxiliary function. https:\/\/github.com\/WebAssembly\/gc\/pull\/463","journal-title":"Fix getfiled auxiliary function"},{"key":"e_1_3_1_94_2","author":"Shin Wonho","year":"2023","unstructured":"Wonho Shin. 2023. Fix ref.null semantics. https:\/\/github.com\/WebAssembly\/gc\/pull\/478","journal-title":"Fix ref.null semantics"},{"key":"e_1_3_1_95_2","author":"Shin Wonho","year":"2023","unstructured":"Wonho Shin. 2023. Minor changes on array.new_elem. https:\/\/github.com\/WebAssembly\/gc\/pull\/477","journal-title":"Minor changes on array.new_elem"},{"key":"e_1_3_1_96_2","author":"Shin Wonho","year":"2023","unstructured":"Wonho Shin. 2023. Pass index argument to getfield function. https:\/\/github.com\/WebAssembly\/gc\/pull\/464","journal-title":"Pass index argument to getfield function"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3656440","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3656440","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,4]],"date-time":"2025-07-04T20:41:17Z","timestamp":1751661677000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3656440"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,6,20]]},"references-count":95,"journal-issue":{"issue":"PLDI","published-print":{"date-parts":[[2024,6,20]]}},"alternative-id":["10.1145\/3656440"],"URL":"https:\/\/doi.org\/10.1145\/3656440","relation":{},"ISSN":["2475-1421"],"issn-type":[{"value":"2475-1421","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,6,20]]},"assertion":[{"value":"2024-06-20","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}