{"oa_version":"Published Version","day":"08","date_published":"2026-01-08T00:00:00Z","tmp":{"short":"CC BY (4.0)","legal_code_url":"https://creativecommons.org/licenses/by/4.0/legalcode","name":"Creative Commons Attribution 4.0 International Public License (CC-BY 4.0)","image":"/images/cc_by.png"},"PlanS_conform":"1","publication_identifier":{"eissn":["2475-1421"]},"title":"Endangered by the language but saved by the compiler: Robust safety via semantic back-translation","article_processing_charge":"Yes (via OA deal)","language":[{"iso":"eng"}],"OA_place":"publisher","publication_status":"published","type":"journal_article","author":[{"first_name":"Niklas","full_name":"Mück, Niklas","last_name":"Mück"},{"full_name":"Georges, Aïna Linn","first_name":"Aïna Linn","last_name":"Georges"},{"last_name":"Dreyer","first_name":"Derek","full_name":"Dreyer, Derek"},{"first_name":"Deepak","full_name":"Garg, Deepak","last_name":"Garg"},{"first_name":"Michael Joachim","full_name":"Sammler, Michael Joachim","last_name":"Sammler","id":"510d3901-2a03-11ee-914d-d9ae9011f0a7"}],"file":[{"access_level":"open_access","creator":"dernst","content_type":"application/pdf","file_size":1058876,"date_created":"2026-02-12T13:51:03Z","checksum":"79be391061efbf9542638996959ce11a","file_name":"2026_ProcACMProgrammingLanguages_Mueck.pdf","relation":"main_file","file_id":"21221","date_updated":"2026-02-12T13:51:03Z","success":1}],"intvolume":" 10","year":"2026","doi":"10.1145/3776682","publisher":"Association for Computing Machinery","user_id":"2DF688A6-F248-11E8-B48F-1D18A9856A87","OA_type":"hybrid","status":"public","quality_controlled":"1","abstract":[{"lang":"eng","text":"It is common for programmers to assemble their programs from a combination of trusted and untrusted components. In this context, a trusted program component is said to be robustly safe if it behaves safely when linked against arbitrary untrusted code. Prior work has shown how various encapsulation mechanisms (in both high- and low-level languages) can be used to protect code so that it is robustly safe, but none of the existing work has explored how robust safety can be achieved in a patently unsafe language like C.\r\nIn this paper, we show how to bring robust safety to a simple yet representative C-like language we call Rec. Although Rec (like C) is inherently ”dangerous” and thus not robustly safe, we can ”save” Rec programs via compilation to Cap, a CHERI-like capability machine. To formalize the benefits of such a hardening compiler, we develop Reckon, a separation logic for verifying robust safety of Rec programs. Reckon is not sound under Rec’s unsafe, C-like semantics, but it is sound when Rec programs are hardened via compilation and linked against untrusted code running on Cap. As a crucial step in proving soundness of Reckon, we introduce a novel technique of semantic back-translation, which we formalize by building on the DimSum framework for multi-language semantics. All our results are mechanized in the Rocq prover."}],"has_accepted_license":"1","month":"01","article_type":"original","file_date_updated":"2026-02-12T13:51:03Z","page":"1153-1182","date_updated":"2026-02-12T13:53:04Z","citation":{"ista":"Mück N, Georges AL, Dreyer D, Garg D, Sammler MJ. 2026. Endangered by the language but saved by the compiler: Robust safety via semantic back-translation. Proceedings of the ACM on Programming Languages. 10, 1153–1182.","chicago":"Mück, Niklas, Aïna Linn Georges, Derek Dreyer, Deepak Garg, and Michael Joachim Sammler. “Endangered by the Language but Saved by the Compiler: Robust Safety via Semantic Back-Translation.” Proceedings of the ACM on Programming Languages. Association for Computing Machinery, 2026. https://doi.org/10.1145/3776682.","short":"N. Mück, A.L. Georges, D. Dreyer, D. Garg, M.J. Sammler, Proceedings of the ACM on Programming Languages 10 (2026) 1153–1182.","ieee":"N. Mück, A. L. Georges, D. Dreyer, D. Garg, and M. J. Sammler, “Endangered by the language but saved by the compiler: Robust safety via semantic back-translation,” Proceedings of the ACM on Programming Languages, vol. 10. Association for Computing Machinery, pp. 1153–1182, 2026.","ama":"Mück N, Georges AL, Dreyer D, Garg D, Sammler MJ. Endangered by the language but saved by the compiler: Robust safety via semantic back-translation. Proceedings of the ACM on Programming Languages. 2026;10:1153-1182. doi:10.1145/3776682","apa":"Mück, N., Georges, A. L., Dreyer, D., Garg, D., & Sammler, M. J. (2026). Endangered by the language but saved by the compiler: Robust safety via semantic back-translation. Proceedings of the ACM on Programming Languages. Association for Computing Machinery. https://doi.org/10.1145/3776682","mla":"Mück, Niklas, et al. “Endangered by the Language but Saved by the Compiler: Robust Safety via Semantic Back-Translation.” Proceedings of the ACM on Programming Languages, vol. 10, Association for Computing Machinery, 2026, pp. 1153–82, doi:10.1145/3776682."},"scopus_import":"1","department":[{"_id":"MiSa"}],"_id":"21041","publication":"Proceedings of the ACM on Programming Languages","oa":1,"volume":10,"ddc":["000"],"date_created":"2026-01-25T23:01:40Z"}