{"id":"https://openalex.org/W3096391135","doi":"https://doi.org/10.1145/3426422.3426978","title":"Wasm/k: delimited continuations for WebAssembly","display_name":"Wasm/k: delimited continuations for WebAssembly","publication_year":2020,"publication_date":"2020-11-15","ids":{"openalex":"https://openalex.org/W3096391135","doi":"https://doi.org/10.1145/3426422.3426978","mag":"3096391135"},"language":"en","primary_location":{"id":"doi:10.1145/3426422.3426978","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3426422.3426978","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages","raw_type":"proceedings-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/2010.01723","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Donald Pinckney","orcid":null},"institutions":[{"id":"https://openalex.org/I12912129","display_name":"Northeastern University","ror":"https://ror.org/04t5xt781","country_code":"US","type":"education","lineage":["https://openalex.org/I12912129"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Donald Pinckney","raw_affiliation_strings":["Northeastern University, USA"],"affiliations":[{"raw_affiliation_string":"Northeastern University, USA","institution_ids":["https://openalex.org/I12912129"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Arjun Guha","orcid":null},"institutions":[{"id":"https://openalex.org/I12912129","display_name":"Northeastern University","ror":"https://ror.org/04t5xt781","country_code":"US","type":"education","lineage":["https://openalex.org/I12912129"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Arjun Guha","raw_affiliation_strings":["Northeastern University, USA"],"affiliations":[{"raw_affiliation_string":"Northeastern University, USA","institution_ids":["https://openalex.org/I12912129"]}]},{"author_position":"last","author":{"id":null,"display_name":"Yuriy Brun","orcid":"https://orcid.org/0000-0003-3027-7986"},"institutions":[{"id":"https://openalex.org/I24603500","display_name":"University of Massachusetts Amherst","ror":"https://ror.org/0072zz521","country_code":"US","type":"education","lineage":["https://openalex.org/I24603500"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Yuriy Brun","raw_affiliation_strings":["University of Massachusetts at Amherst, USA"],"affiliations":[{"raw_affiliation_string":"University of Massachusetts at Amherst, USA","institution_ids":["https://openalex.org/I24603500"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I12912129"],"apc_list":null,"apc_paid":null,"fwci":0.7072,"has_fulltext":false,"cited_by_count":6,"citation_normalized_percentile":{"value":0.69420555,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"16","last_page":"28"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9871000051498413,"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"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9871000051498413,"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"}},{"id":"https://openalex.org/T10478","display_name":"Diamond and Carbon-based Materials Research","score":0.9865000247955322,"subfield":{"id":"https://openalex.org/subfields/2505","display_name":"Materials Chemistry"},"field":{"id":"https://openalex.org/fields/25","display_name":"Materials Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9837999939918518,"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/compiler","display_name":"Compiler","score":0.6995000243186951},{"id":"https://openalex.org/keywords/function","display_name":"Function (biology)","score":0.5056999921798706},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4553999900817871},{"id":"https://openalex.org/keywords/variety","display_name":"Variety (cybernetics)","score":0.4117000102996826},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.3804999887943268},{"id":"https://openalex.org/keywords/quality","display_name":"Quality (philosophy)","score":0.30079999566078186}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7305999994277954},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6995000243186951},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6284999847412109},{"id":"https://openalex.org/C14036430","wikidata":"https://www.wikidata.org/wiki/Q3736076","display_name":"Function (biology)","level":2,"score":0.5056999921798706},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4553999900817871},{"id":"https://openalex.org/C136197465","wikidata":"https://www.wikidata.org/wiki/Q1729295","display_name":"Variety (cybernetics)","level":2,"score":0.4117000102996826},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.3804999887943268},{"id":"https://openalex.org/C2779530757","wikidata":"https://www.wikidata.org/wiki/Q1207505","display_name":"Quality (philosophy)","level":2,"score":0.30079999566078186},{"id":"https://openalex.org/C139571649","wikidata":"https://www.wikidata.org/wiki/Q1156793","display_name":"Program optimization","level":3,"score":0.27790001034736633},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.2721000015735626},{"id":"https://openalex.org/C2776291640","wikidata":"https://www.wikidata.org/wiki/Q2912517","display_name":"Value (mathematics)","level":2,"score":0.2635999917984009},{"id":"https://openalex.org/C115168132","wikidata":"https://www.wikidata.org/wiki/Q55813","display_name":"Machine code","level":3,"score":0.25690001249313354},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.2551000118255615},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.251800000667572}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3426422.3426978","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3426422.3426978","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:2010.01723","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2010.01723","pdf_url":"https://arxiv.org/pdf/2010.01723","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":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"pmh:oai:arXiv.org:2010.01723","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2010.01723","pdf_url":"https://arxiv.org/pdf/2010.01723","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":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G300055702","display_name":null,"funder_award_id":"CCF-2007066, CCF-1453474, CCF-1564162","funder_id":"https://openalex.org/F4320322898","funder_display_name":"Shota Rustaveli National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320322898","display_name":"Shota Rustaveli National Science Foundation","ror":"https://ror.org/00xc87681"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":9,"referenced_works":["https://openalex.org/W1999643018","https://openalex.org/W2007759294","https://openalex.org/W2157998816","https://openalex.org/W2293168108","https://openalex.org/W2625141509","https://openalex.org/W2979976652","https://openalex.org/W3038961507","https://openalex.org/W3197594700","https://openalex.org/W4243572110"],"related_works":[],"abstract_inverted_index":{"WebAssembly":[0,45,64,80,91,110,148],"is":[1,10,115,132],"designed":[2],"to":[3,7,63,108,126,134,144,160,175],"be":[4,77],"an":[5,146,206],"alternative":[6],"JavaScript":[8],"that":[9,57,73,181,193],"a":[11,19,141,170,179,212],"safe,":[12,116],"portable,":[13],"and":[14,68,101,127,165,191,211],"efficient":[15,135],"compilation":[16],"target":[17],"for":[18],"variety":[20],"of":[21,25,35,42,54,121],"languages.":[22],"The":[23],"performance":[24,34,210],"high-level":[26,55],"languages":[27,56],"depends":[28],"not":[29,104],"only":[30,61],"on":[31,39,173,194],"the":[32,40,43,109,119,201],"underlying":[33],"WebAssembly,":[36],"but":[37],"also":[38],"quality":[41],"generated":[44],"code.":[46,70],"In":[47],"this":[48],"paper,":[49],"we":[50,137],"identify":[51],"several":[52,186],"features":[53],"current":[58],"approaches":[59],"can":[60,199],"compile":[62],"by":[65,153],"generating":[66],"complex":[67],"inefficient":[69],"We":[71,85,150,184],"argue":[72],"these":[74],"problems":[75],"could":[76],"addressed":[78],"if":[79],"natively":[81],"supported":[82],"first-class":[83],"continuations.":[84,94],"then":[86],"present":[87,185],"Wasm/k,":[88],"which":[89,156],"extends":[90],"with":[92,205],"delimited":[93,158],"Wasm/k":[95,114,131,139,152,177],"introduces":[96],"no":[97],"new":[98],"value":[99],"types,":[100],"thus":[102],"does":[103],"require":[105],"significant":[106],"changes":[107],"type":[111],"system":[112],"(validation).":[113],"even":[117],"in":[118,178,209,215],"presence":[120],"foreign":[122],"function":[123],"calls":[124],"(e.g.,":[125],"from":[128],"JavaScript).":[129],"Finally,":[130],"amenable":[133],"implementation:":[136],"implement":[138],"as":[140,169],"local":[142],"change":[143],"Wasmtime,":[145],"existing":[147],"JIT.":[149],"evaluate":[151],"implementing":[154,195],"C/k,":[155,190],"adds":[157],"continuations":[159],"C/C++.":[161],"C/k":[162],"uses":[163],"Emscripten":[164],"its":[166],"implementation":[167],"serves":[168],"case":[171,187],"study":[172],"how":[174],"use":[176],"compiler":[180],"targets":[182],"WebAssembly.":[183],"studies":[188],"using":[189],"show":[192],"green":[196],"threads,":[197],"it":[198],"outperform":[200],"state-of-the-art":[202],"approach":[203],"Asyncify":[204],"18%":[207],"improvement":[208,214],"30%":[213],"code":[216],"size.":[217]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":1}],"updated_date":"2026-04-09T08:11:56.329763","created_date":"2020-11-09T00:00:00"}
