{"id":"https://openalex.org/W4415516800","doi":"https://doi.org/10.1145/3737696","title":"Automatically Translating C to Rust","display_name":"Automatically Translating C to Rust","publication_year":2025,"publication_date":"2025-10-24","ids":{"openalex":"https://openalex.org/W4415516800","doi":"https://doi.org/10.1145/3737696"},"language":"en","primary_location":{"id":"doi:10.1145/3737696","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3737696","pdf_url":null,"source":{"id":"https://openalex.org/S103482838","display_name":"Communications of the ACM","issn_l":"0001-0782","issn":["0001-0782","1557-7317"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Communications of the ACM","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://doi.org/10.1145/3737696","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5024932910","display_name":"Jaemin Hong","orcid":"https://orcid.org/0000-0003-4067-7369"},"institutions":[{"id":"https://openalex.org/I119522612","display_name":"Daejeon University","ror":"https://ror.org/02eqchk86","country_code":"KR","type":"education","lineage":["https://openalex.org/I119522612"]}],"countries":["KR"],"is_corresponding":true,"raw_author_name":"Jaemin Hong","raw_affiliation_strings":["KAIST, School of Computing, Daejeon, Daejeon, Korea (the Republic of)"],"affiliations":[{"raw_affiliation_string":"KAIST, School of Computing, Daejeon, Daejeon, Korea (the Republic of)","institution_ids":["https://openalex.org/I119522612"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5087492388","display_name":"Sukyoung Ryu","orcid":"https://orcid.org/0000-0002-0019-9772"},"institutions":[{"id":"https://openalex.org/I157485424","display_name":"Korea Advanced Institute of Science and Technology","ror":"https://ror.org/05apxxy63","country_code":"KR","type":"education","lineage":["https://openalex.org/I157485424"]}],"countries":["KR"],"is_corresponding":false,"raw_author_name":"Sukyoung Ryu","raw_affiliation_strings":["KAIST, Daejeon, Daejeon, Korea (the Republic of)"],"affiliations":[{"raw_affiliation_string":"KAIST, Daejeon, Daejeon, Korea (the Republic of)","institution_ids":["https://openalex.org/I157485424"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5024932910"],"corresponding_institution_ids":["https://openalex.org/I119522612"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.33076282,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"68","issue":"11","first_page":"58","last_page":"65"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.8185999989509583,"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"}},"topics":[{"id":"https://openalex.org/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.8185999989509583,"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/T12784","display_name":"Modular Robots and Swarm Intelligence","score":0.8105000257492065,"subfield":{"id":"https://openalex.org/subfields/2210","display_name":"Mechanical Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.7795000076293945,"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.8014000058174133},{"id":"https://openalex.org/keywords/rust","display_name":"Rust (programming language)","score":0.7730000019073486},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5012999773025513},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.430400013923645},{"id":"https://openalex.org/keywords/transformation","display_name":"Transformation (genetics)","score":0.41990000009536743},{"id":"https://openalex.org/keywords/memory-safety","display_name":"Memory safety","score":0.4189999997615814},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4041000008583069},{"id":"https://openalex.org/keywords/quality","display_name":"Quality (philosophy)","score":0.37400001287460327}],"concepts":[{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8014000058174133},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7860999703407288},{"id":"https://openalex.org/C197781089","wikidata":"https://www.wikidata.org/wiki/Q575650","display_name":"Rust (programming language)","level":2,"score":0.7730000019073486},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5512999892234802},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5012999773025513},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.430400013923645},{"id":"https://openalex.org/C204241405","wikidata":"https://www.wikidata.org/wiki/Q461499","display_name":"Transformation (genetics)","level":3,"score":0.41990000009536743},{"id":"https://openalex.org/C28180684","wikidata":"https://www.wikidata.org/wiki/Q4080983","display_name":"Memory safety","level":3,"score":0.4189999997615814},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4041000008583069},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3743000030517578},{"id":"https://openalex.org/C2779530757","wikidata":"https://www.wikidata.org/wiki/Q1207505","display_name":"Quality (philosophy)","level":2,"score":0.37400001287460327},{"id":"https://openalex.org/C2779791154","wikidata":"https://www.wikidata.org/wiki/Q258040","display_name":"Model transformation","level":3,"score":0.33660000562667847},{"id":"https://openalex.org/C204321447","wikidata":"https://www.wikidata.org/wiki/Q30642","display_name":"Natural language processing","level":1,"score":0.32409998774528503},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.323199987411499},{"id":"https://openalex.org/C130963320","wikidata":"https://www.wikidata.org/wiki/Q1401207","display_name":"Root cause analysis","level":2,"score":0.3183000087738037},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.3149000108242035},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.302700012922287},{"id":"https://openalex.org/C18762648","wikidata":"https://www.wikidata.org/wiki/Q42213","display_name":"Work (physics)","level":2,"score":0.30169999599456787},{"id":"https://openalex.org/C57691317","wikidata":"https://www.wikidata.org/wiki/Q1289248","display_name":"Scalar (mathematics)","level":2,"score":0.28119999170303345},{"id":"https://openalex.org/C84945661","wikidata":"https://www.wikidata.org/wiki/Q7366567","display_name":"Root cause","level":2,"score":0.2624000012874603},{"id":"https://openalex.org/C179518139","wikidata":"https://www.wikidata.org/wiki/Q5140297","display_name":"Coding (social sciences)","level":2,"score":0.2506999969482422}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3737696","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3737696","pdf_url":null,"source":{"id":"https://openalex.org/S103482838","display_name":"Communications of the ACM","issn_l":"0001-0782","issn":["0001-0782","1557-7317"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Communications of the ACM","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3737696","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3737696","pdf_url":null,"source":{"id":"https://openalex.org/S103482838","display_name":"Communications of the ACM","issn_l":"0001-0782","issn":["0001-0782","1557-7317"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Communications of the ACM","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":13,"referenced_works":["https://openalex.org/W2013892605","https://openalex.org/W2400705738","https://openalex.org/W2419340123","https://openalex.org/W2762171171","https://openalex.org/W2779850521","https://openalex.org/W2988850119","https://openalex.org/W3205049031","https://openalex.org/W4362676373","https://openalex.org/W4384345830","https://openalex.org/W4384471416","https://openalex.org/W4399872428","https://openalex.org/W4403486309","https://openalex.org/W4403520116"],"related_works":[],"abstract_inverted_index":{"Legacy":[0],"system":[1],"programs":[2],"developed":[3],"in":[4],"C":[5],"have":[6],"suffered":[7],"from":[8],"prevalent":[9],"memory":[10],"bugs.":[11],"Migrating":[12],"these":[13],"systems":[14],"to":[15,21,25,31,92,111],"Rust":[16,75],"is":[17,63],"a":[18],"promising":[19],"way":[20],"enhance":[22],"reliability,":[23],"thanks":[24],"Rust\u2019s":[26],"strong":[27],"safety":[28,62],"guarantee.":[29],"Due":[30],"the":[32,45,67,79,107,138],"high":[33],"cost":[34],"of":[35,47,81,140],"manual":[36],"migration,":[37],"automatic":[38,82],"C-to-Rust":[39,146],"translators":[40,52],"are":[41],"essential":[42],"for":[43,145],"enabling":[44],"migration":[46],"real-world":[48],"systems.":[49],"However,":[50],"existing":[51],"generate":[53],"unsatisfactory":[54],"code":[55,70,87],"by":[56,66,74],"relying":[57],"on":[58],"language":[59,143],"features":[60,95,126],"whose":[61],"not":[64],"validated":[65],"compiler":[68],"and":[69,86,96,101,119,122,127],"patterns":[71,98,129],"considered":[72],"unidiomatic":[73,97,128],"developers.":[76],"To":[77],"improve":[78],"quality":[80],"translation,":[83],"static":[84],"analysis":[85],"transformation":[88],"can":[89],"be":[90],"employed":[91],"replace":[93],"unsafe":[94,125],"with":[99,117],"safe":[100],"idiomatic":[102],"alternatives.":[103],"This":[104],"article":[105],"discusses":[106],"research":[108],"community\u2019s":[109],"efforts":[110],"address":[112],"scalar":[113],"pointers,":[114],"locks,":[115],"unions":[116],"tags,":[118],"output":[120],"parameters,":[121],"introduces":[123],"remaining":[124],"that":[130],"future":[131],"work":[132],"should":[133],"tackle.":[134],"Furthermore,":[135],"we":[136],"explore":[137],"potential":[139],"using":[141],"large":[142],"models":[144],"translation.":[147]},"counts_by_year":[],"updated_date":"2026-03-07T16:01:11.037858","created_date":"2025-10-24T00:00:00"}
