Automatically Translating C to Rust.
Saved in:
| Title: | Automatically Translating C to Rust. |
|---|---|
| Authors: | Hong, Jaemin1 (AUTHOR) jaemin.hong@kaist.ac.kr, Ryu, Sukyoung2 (AUTHOR) sryu.cs@kaist.ac.kr |
| Source: | Communications of the ACM. Nov2025, Vol. 68 Issue 11, p58-65. 8p. |
| Subjects: | C (Computer program language), Programming languages, Computer programming, Legacy systems, Compilers (Computer programs), Language models, Translators (Computer programs) |
| Abstract: | Migrating legacy systems from C to Rust offers a promising path to improve software reliability due to Rust’s strong safety guarantees. Automatic translators can assist this process, but current tools often produce code that is unsafe or unidiomatic, relying on features not fully validated by the Rust compiler. The use of carefully designed static analyses and code transformations can enhance translations by replacing unsafe constructs with safe, idiomatic alternatives. Additionally, large language models present a potential approach to C-to-Rust translation, though they frequently introduce type errors or behavioral deviations, suggesting that combining large language models with static analysis could be a fruitful direction for future research. |
| Database: | Engineering Source |
| FullText | Links: – Type: pdflink Text: Availability: 0 |
|---|---|
| Header | DbId: egs DbLabel: Engineering Source An: 188947693 AccessLevel: 6 PubType: Periodical PubTypeId: serialPeriodical PreciseRelevancyScore: 0 |
| IllustrationInfo | |
| Items | – Name: Title Label: Title Group: Ti Data: Automatically Translating C to Rust. – Name: Author Label: Authors Group: Au Data: <searchLink fieldCode="AR" term="%22Hong%2C+Jaemin%22">Hong, Jaemin</searchLink><relatesTo>1</relatesTo> (AUTHOR)<i> jaemin.hong@kaist.ac.kr</i><br /><searchLink fieldCode="AR" term="%22Ryu%2C+Sukyoung%22">Ryu, Sukyoung</searchLink><relatesTo>2</relatesTo> (AUTHOR)<i> sryu.cs@kaist.ac.kr</i> – Name: TitleSource Label: Source Group: Src Data: <searchLink fieldCode="JN" term="%22Communications+of+the+ACM%22">Communications of the ACM</searchLink>. Nov2025, Vol. 68 Issue 11, p58-65. 8p. – Name: Subject Label: Subjects Group: Su Data: <searchLink fieldCode="DE" term="%22C+%28Computer+program+language%29%22">C (Computer program language)</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+languages%22">Programming languages</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+programming%22">Computer programming</searchLink><br /><searchLink fieldCode="DE" term="%22Legacy+systems%22">Legacy systems</searchLink><br /><searchLink fieldCode="DE" term="%22Compilers+%28Computer+programs%29%22">Compilers (Computer programs)</searchLink><br /><searchLink fieldCode="DE" term="%22Language+models%22">Language models</searchLink><br /><searchLink fieldCode="DE" term="%22Translators+%28Computer+programs%29%22">Translators (Computer programs)</searchLink> – Name: Abstract Label: Abstract Group: Ab Data: Migrating legacy systems from C to Rust offers a promising path to improve software reliability due to Rust’s strong safety guarantees. Automatic translators can assist this process, but current tools often produce code that is unsafe or unidiomatic, relying on features not fully validated by the Rust compiler. The use of carefully designed static analyses and code transformations can enhance translations by replacing unsafe constructs with safe, idiomatic alternatives. Additionally, large language models present a potential approach to C-to-Rust translation, though they frequently introduce type errors or behavioral deviations, suggesting that combining large language models with static analysis could be a fruitful direction for future research. |
| PLink | https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=188947693 |
| RecordInfo | BibRecord: BibEntity: Identifiers: – Type: doi Value: 10.1145/3737696 Languages: – Code: eng Text: English PhysicalDescription: Pagination: PageCount: 8 StartPage: 58 Subjects: – SubjectFull: C (Computer program language) Type: general – SubjectFull: Programming languages Type: general – SubjectFull: Computer programming Type: general – SubjectFull: Legacy systems Type: general – SubjectFull: Compilers (Computer programs) Type: general – SubjectFull: Language models Type: general – SubjectFull: Translators (Computer programs) Type: general Titles: – TitleFull: Automatically Translating C to Rust. Type: main BibRelationships: HasContributorRelationships: – PersonEntity: Name: NameFull: Hong, Jaemin – PersonEntity: Name: NameFull: Ryu, Sukyoung IsPartOfRelationships: – BibEntity: Dates: – D: 01 M: 11 Text: Nov2025 Type: published Y: 2025 Identifiers: – Type: issn-print Value: 00010782 Numbering: – Type: volume Value: 68 – Type: issue Value: 11 Titles: – TitleFull: Communications of the ACM Type: main |
| ResultId | 1 |