{"id":"https://openalex.org/W4411369569","doi":"https://doi.org/10.1145/3732771.3742714","title":"TranspileJS, an Intelligent Framework for Transpiling JavaScript to WebAssembly","display_name":"TranspileJS, an Intelligent Framework for Transpiling JavaScript to WebAssembly","publication_year":2025,"publication_date":"2025-06-12","ids":{"openalex":"https://openalex.org/W4411369569","doi":"https://doi.org/10.1145/3732771.3742714"},"language":"en","primary_location":{"id":"doi:10.1145/3732771.3742714","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3732771.3742714","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3732771.3742714","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th ACM SIGPLAN International Conference on Software Language Engineering","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3732771.3742714","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5101140586","display_name":"Jos\u00e9 Pedro Ferreira","orcid":"https://orcid.org/0009-0007-9756-971X"},"institutions":[{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]}],"countries":["PT"],"is_corresponding":true,"raw_author_name":"Jos\u00e9 Pedro Ferreira","raw_affiliation_strings":["Faculdade de Engenharia, Universidade do Porto, Porto, Portugal"],"raw_orcid":"https://orcid.org/0009-0007-9756-971X","affiliations":[{"raw_affiliation_string":"Faculdade de Engenharia, Universidade do Porto, Porto, Portugal","institution_ids":["https://openalex.org/I182534213"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5028954771","display_name":"Jo\u00e3o Bispo","orcid":"https://orcid.org/0000-0002-3017-9449"},"institutions":[{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"Jo\u00e3o Bispo","raw_affiliation_strings":["Faculdade de Engenharia, Universidade do Porto, Porto, Portugal"],"raw_orcid":"https://orcid.org/0000-0002-3017-9449","affiliations":[{"raw_affiliation_string":"Faculdade de Engenharia, Universidade do Porto, Porto, Portugal","institution_ids":["https://openalex.org/I182534213"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5056399375","display_name":"Susana Maria de Sousa Lima","orcid":"https://orcid.org/0000-0003-0271-1773"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Susana Lima","raw_affiliation_strings":["Jscrambler, Porto, Portugal"],"raw_orcid":"https://orcid.org/0000-0003-0271-1773","affiliations":[{"raw_affiliation_string":"Jscrambler, Porto, Portugal","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5101140586"],"corresponding_institution_ids":["https://openalex.org/I182534213"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.19124029,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"71","last_page":"83"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9965999722480774,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9965999722480774,"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.9728000164031982,"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/T11159","display_name":"Manufacturing Process and Optimization","score":0.9520999789237976,"subfield":{"id":"https://openalex.org/subfields/2209","display_name":"Industrial and Manufacturing Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.8593523502349854},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7825313806533813},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.43562883138656616}],"concepts":[{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.8593523502349854},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7825313806533813},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.43562883138656616}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3732771.3742714","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3732771.3742714","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3732771.3742714","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th ACM SIGPLAN International Conference on Software Language Engineering","raw_type":"proceedings-article"},{"id":"pmh:oai:repositorio-aberto.up.pt:10216/160987","is_oa":false,"landing_page_url":"https://hdl.handle.net/10216/160987","pdf_url":null,"source":{"id":"https://openalex.org/S4306401934","display_name":"Open Repository of the University of Porto (University of Porto)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I182534213","host_organization_name":"Universidade do Porto","host_organization_lineage":["https://openalex.org/I182534213"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"master thesis"}],"best_oa_location":{"id":"doi:10.1145/3732771.3742714","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3732771.3742714","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3732771.3742714","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th ACM SIGPLAN International Conference on Software Language Engineering","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4411369569.pdf","grobid_xml":"https://content.openalex.org/works/W4411369569.grobid-xml"},"referenced_works_count":19,"referenced_works":["https://openalex.org/W2091335641","https://openalex.org/W2152419799","https://openalex.org/W2159712408","https://openalex.org/W2534815697","https://openalex.org/W2625141509","https://openalex.org/W2749460454","https://openalex.org/W2763314947","https://openalex.org/W2884368433","https://openalex.org/W2898389076","https://openalex.org/W2901226836","https://openalex.org/W2998660555","https://openalex.org/W3005541700","https://openalex.org/W3025127859","https://openalex.org/W3102852402","https://openalex.org/W3186210108","https://openalex.org/W3195399555","https://openalex.org/W4206742944","https://openalex.org/W4228999312","https://openalex.org/W4288057729"],"related_works":["https://openalex.org/W4391375266","https://openalex.org/W2899084033","https://openalex.org/W2748952813","https://openalex.org/W2461078469","https://openalex.org/W123790205","https://openalex.org/W2085515337","https://openalex.org/W3087706721","https://openalex.org/W4287664162","https://openalex.org/W3102852402","https://openalex.org/W827014118"],"abstract_inverted_index":{"WebAssembly":[0],"(Wasm)":[1],"has":[2,31],"emerged":[3],"as":[4],"a":[5,51,70,143,149,170],"powerful":[6],"binary":[7],"format,":[8],"enabling":[9],"the":[10,24,84,89,93,112,116,122,137],"seamless":[11],"integration":[12],"of":[13,115,124,136,146],"languages":[14],"like":[15],"C":[16],"and":[17,37,62,98,106,168,172,188],"Rust":[18],"into":[19,66,81],"web":[20,29],"applications.":[21],"JavaScript":[22],"(JS),":[23],"dominant":[25],"language":[26],"for":[27,185],"client-side":[28],"development,":[30],"its":[32,43],"code":[33,57,117,125,138,186],"susceptible":[34],"to":[35,42,55,76,148,164],"tampering":[36],"intellectual":[38],"property":[39],"theft":[40],"due":[41],"transparency":[44],"in":[45,139,152],"browser":[46],"environments.":[47],"We":[48],"introduce":[49],"TranspileJS,":[50],"novel":[52],"tool":[53],"designed":[54],"enhance":[56],"security":[58],"by":[59,92],"automatically":[60],"selecting":[61],"translating":[63],"JS":[64,75,97],"snippets":[65],"Wasm.":[67],"TranspileJS":[68,87,131],"leverages":[69],"multi-stage":[71],"architecture":[72],"that":[73,111,130],"converts":[74],"TypeScript,":[77],"which":[78],"is":[79,118],"compiled":[80],"Wasm":[82],"using":[83],"AssemblyScript":[85],"compiler.":[86],"addresses":[88],"challenges":[90],"posed":[91],"fundamental":[94],"differences":[95],"between":[96],"Wasm,":[99],"including":[100],"dynamic":[101],"typing,":[102],"runtime":[103],"behaviour":[104,114],"mismatches,":[105],"standard":[107,165],"library":[108],"discrepancies,":[109],"ensuring":[110],"original":[113],"preserved":[119],"while":[120],"maximising":[121],"amount":[123],"transpiled.":[126],"Our":[127],"experiments":[128],"show":[129],"successfully":[132],"transpiles":[133],"approximately":[134],"one-third":[135],"our":[140],"dataset,":[141],"with":[142,178],"performance":[144],"impact":[145],"up":[147],"12.3%":[150],"increase":[151],"execution":[153],"time.":[154],"The":[155],"transpilation":[156,177],"process":[157],"inherently":[158],"obfuscates":[159],"code,":[160],"creating":[161],"effects":[162],"similar":[163],"obfuscation":[166,180],"techniques,":[167],"generates":[169],"stealthy":[171],"resilient":[173],"output.":[174],"Furthermore,":[175],"combining":[176],"WebAssembly-specific":[179],"techniques":[181],"opens":[182],"new":[183],"possibilities":[184],"protection":[187],"resistance":[189],"against":[190],"reverse":[191],"engineering.":[192]},"counts_by_year":[],"updated_date":"2026-03-27T05:58:40.876381","created_date":"2025-10-10T00:00:00"}
