{"id":"https://openalex.org/W4313144130","doi":"https://doi.org/10.1145/3510454.3528640","title":"In rust we trust","display_name":"In rust we trust","publication_year":2022,"publication_date":"2022-05-21","ids":{"openalex":"https://openalex.org/W4313144130","doi":"https://doi.org/10.1145/3510454.3528640"},"language":"en","primary_location":{"id":"doi:10.1145/3510454.3528640","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3510454.3528640","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: Companion Proceedings","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5032166246","display_name":"Michael Ling","orcid":"https://orcid.org/0000-0003-4303-7850"},"institutions":[{"id":"https://openalex.org/I4210115038","display_name":"Huawei Technologies (Canada)","ror":"https://ror.org/026venb53","country_code":"CA","type":"company","lineage":["https://openalex.org/I2250955327","https://openalex.org/I4210115038"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Michael Ling","raw_affiliation_strings":["Huawei Technologies, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Huawei Technologies, Canada","institution_ids":["https://openalex.org/I4210115038"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5002289161","display_name":"Yijun Yu","orcid":"https://orcid.org/0000-0002-7154-8570"},"institutions":[{"id":"https://openalex.org/I204136569","display_name":"The Open University","ror":"https://ror.org/05mzfcs16","country_code":"GB","type":"education","lineage":["https://openalex.org/I204136569"]},{"id":"https://openalex.org/I4210115038","display_name":"Huawei Technologies (Canada)","ror":"https://ror.org/026venb53","country_code":"CA","type":"company","lineage":["https://openalex.org/I2250955327","https://openalex.org/I4210115038"]}],"countries":["CA","GB"],"is_corresponding":false,"raw_author_name":"Yijun Yu","raw_affiliation_strings":["Huawei Technologies, Canada and The Open University, UK"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Huawei Technologies, Canada and The Open University, UK","institution_ids":["https://openalex.org/I204136569","https://openalex.org/I4210115038"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5063511611","display_name":"Haitao Wu","orcid":"https://orcid.org/0009-0003-4481-2617"},"institutions":[{"id":"https://openalex.org/I4210115038","display_name":"Huawei Technologies (Canada)","ror":"https://ror.org/026venb53","country_code":"CA","type":"company","lineage":["https://openalex.org/I2250955327","https://openalex.org/I4210115038"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Haitao Wu","raw_affiliation_strings":["Huawei Technologies, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Huawei Technologies, Canada","institution_ids":["https://openalex.org/I4210115038"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100344860","display_name":"Yuan Wang","orcid":"https://orcid.org/0000-0002-5379-8007"},"institutions":[{"id":"https://openalex.org/I4210115038","display_name":"Huawei Technologies (Canada)","ror":"https://ror.org/026venb53","country_code":"CA","type":"company","lineage":["https://openalex.org/I2250955327","https://openalex.org/I4210115038"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Yuan Wang","raw_affiliation_strings":["Huawei Technologies, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Huawei Technologies, Canada","institution_ids":["https://openalex.org/I4210115038"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5111905373","display_name":"James R. Cordy","orcid":null},"institutions":[{"id":"https://openalex.org/I204722609","display_name":"Queen's University","ror":"https://ror.org/02y72wh86","country_code":"CA","type":"education","lineage":["https://openalex.org/I204722609"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"James R. Cordy","raw_affiliation_strings":["Queen's University, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Queen's University, Canada","institution_ids":["https://openalex.org/I204722609"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5091586373","display_name":"Ahmed E. Hassan","orcid":"https://orcid.org/0000-0001-7749-5513"},"institutions":[{"id":"https://openalex.org/I204722609","display_name":"Queen's University","ror":"https://ror.org/02y72wh86","country_code":"CA","type":"education","lineage":["https://openalex.org/I204722609"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Ahmed E. Hassan","raw_affiliation_strings":["Queen's University, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Queen's University, Canada","institution_ids":["https://openalex.org/I204722609"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":3.5027,"has_fulltext":false,"cited_by_count":26,"citation_normalized_percentile":{"value":0.94254305,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"354","last_page":"355"},"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.9993000030517578,"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.9993000030517578,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9991000294685364,"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/T10260","display_name":"Software Engineering Research","score":0.9983000159263611,"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/code-refactoring","display_name":"Code refactoring","score":0.8871299028396606},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8351994156837463},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7943212985992432},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.7751034498214722},{"id":"https://openalex.org/keywords/transformation","display_name":"Transformation (genetics)","score":0.5956019163131714},{"id":"https://openalex.org/keywords/rust","display_name":"Rust (programming language)","score":0.5615137219429016},{"id":"https://openalex.org/keywords/program-transformation","display_name":"Program transformation","score":0.5469622015953064},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.5392974019050598},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.5271146893501282},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.5136951208114624},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.4390681982040405},{"id":"https://openalex.org/keywords/parsing","display_name":"Parsing","score":0.23732918500900269},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.14116829633712769}],"concepts":[{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.8871299028396606},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8351994156837463},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7943212985992432},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7751034498214722},{"id":"https://openalex.org/C204241405","wikidata":"https://www.wikidata.org/wiki/Q461499","display_name":"Transformation (genetics)","level":3,"score":0.5956019163131714},{"id":"https://openalex.org/C197781089","wikidata":"https://www.wikidata.org/wiki/Q575650","display_name":"Rust (programming language)","level":2,"score":0.5615137219429016},{"id":"https://openalex.org/C2778361913","wikidata":"https://www.wikidata.org/wiki/Q7248437","display_name":"Program transformation","level":2,"score":0.5469622015953064},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.5392974019050598},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.5271146893501282},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.5136951208114624},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.4390681982040405},{"id":"https://openalex.org/C186644900","wikidata":"https://www.wikidata.org/wiki/Q194152","display_name":"Parsing","level":2,"score":0.23732918500900269},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.14116829633712769},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3510454.3528640","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3510454.3528640","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: Companion Proceedings","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":5,"referenced_works":["https://openalex.org/W2128466029","https://openalex.org/W2564182106","https://openalex.org/W3034030180","https://openalex.org/W3205049031","https://openalex.org/W4241006348"],"related_works":["https://openalex.org/W2467097043","https://openalex.org/W2336361681","https://openalex.org/W1608659702","https://openalex.org/W2047793074","https://openalex.org/W270927586","https://openalex.org/W2321083942","https://openalex.org/W1507167368","https://openalex.org/W4282842358","https://openalex.org/W4313144130","https://openalex.org/W2165496094"],"abstract_inverted_index":{"Rust":[0,31,86,198,234],"is":[1],"a":[2,8,16,23,144],"type-safe":[3],"system":[4],"programming":[5],"language":[6],"with":[7,222],"compiler":[9,75,131],"checking":[10],"memory":[11],"and":[12,72,92,123,181,192,208,212],"concurrency":[13],"safety.":[14],"For":[15],"smooth":[17],"transition":[18],"from":[19],"existing":[20,36],"C":[21,28,210],"projects,":[22,211],"source-to-source":[24,111,146,172],"transpiler":[25],"can":[26],"autotransform":[27],"programs":[29],"into":[30],"using":[32,118],"program":[33],"transformation.":[34],"However,":[35],"C-to-Rust":[37],"transformation":[38,112,147,173],"tools":[39],"(e.g.":[40],"the":[41,47,51,136,151,154,158,162,187,220,229],"open-source":[42,207],"C2Rust":[43,95,116],"transpiler1":[44],"project)":[45],"have":[46],"drawback":[48],"of":[49,54,82,94,139,153,161,175,189,232],"preserving":[50],"unsafe":[52,103,190],"semantics":[53],"C,":[55],"while":[56],"rewriting":[57],"them":[58],"in":[59,106],"Rust's":[60],"syntax.":[61],"The":[62],"work":[63],"by":[64,134],"Emre":[65],"et":[66],"el.":[67],"[2]":[68],"acknowledged":[69],"these":[70],"drawbacks,":[71],"used":[73],"rustc":[74,130,163],"feedback":[76],"to":[77,85,88,114,228],"refactor":[78],"one":[79],"certain":[80],"type":[81],"raw":[83],"pointers":[84],"references":[87],"improve":[89],"overall":[90],"safety":[91,159],"idiomaticness":[93],"output.":[96],"Focusing":[97],"on":[98,129,205],"improving":[99],"API-safeness":[100],"(i.e.":[101],"lowering":[102],"keyword":[104],"usage":[105],"function":[107],"signatures),":[108],"we":[109,141],"apply":[110],"technique":[113],"auto-refactor":[115],"output":[117],"code":[119,156,217,225],"structure":[120],"pattern":[121],"matching":[122],"transformation,":[124],"which":[125,176],"does":[126],"not":[127],"rely":[128],"feedback.":[132],"And":[133],"relaxing":[135],"semantics-preserving":[137,180],"constraints":[138],"transformations,":[140,221],"present":[142],"CRustS2":[143],"fully-automated":[145],"approach":[148],"that":[149],"increases":[150],"ratio":[152],"transformed":[155],"passing":[157],"checks":[160],"compiler.":[164],"Our":[165,200],"method":[166,201],"uses":[167],"220":[168],"new":[169],"TXL":[170],"[1]":[171],"rules,":[174],"198":[177],"are":[178,183],"strictly":[179],"22":[182],"semantics-approximating,":[184],"thus":[185],"reducing":[186],"scope":[188],"expressions":[191],"exposing":[193],"more":[194],"opportunities":[195],"for":[196],"safe":[197,216,224],"refactoring.":[199],"has":[202],"been":[203],"evaluated":[204],"both":[206],"commercial":[209],"demonstrates":[213],"significantly":[214],"higher":[215],"ratios":[218,226],"after":[219],"function-level":[223],"comparable":[227],"average":[230],"level":[231],"idiomatic":[233],"projects.":[235]},"counts_by_year":[{"year":2026,"cited_by_count":5},{"year":2025,"cited_by_count":14},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":2}],"updated_date":"2026-08-21T09:56:20.448147","created_date":"2023-01-06T00:00:00"}
