論文の概要: Translating C To Rust: Lessons from a User Study
- arxiv url: http://arxiv.org/abs/2411.14174v2
- Date: Fri, 06 Dec 2024 04:14:08 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-12-09 15:54:22.666374
- Title: Translating C To Rust: Lessons from a User Study
- Title(参考訳): CからRustへの翻訳 - ユーザスタディからの教訓
- Authors: Ruishi Li, Bo Wang, Tianyu Li, Prateek Saxena, Ashish Kundu,
- Abstract要約: Rustは、未使用のCプログラムが楽しむことのない保証として、プログラムの完全なメモリ安全性を提供することを目指している。
我々は,現実世界のCプログラムをRustに変換するよう人間に求めるユーザスタディについて報告する。
私たちの参加者は安全なRust翻訳を作成できますが、最先端の自動ツールではそうできません。
- 参考スコア(独自算出の注目度): 12.49361031696427
- License:
- Abstract: Rust aims to offer full memory safety for programs, a guarantee that untamed C programs do not enjoy. How difficult is it to translate existing C code to Rust? To get a complementary view from that of automatic C to Rust translators, we report on a user study asking humans to translate real-world C programs to Rust. Our participants are able to produce safe Rust translations, whereas state-of-the-art automatic tools are not able to do so. Our analysis highlights that the high-level strategy taken by users departs significantly from those of automatic tools we study. We also find that users often choose zero-cost (static) abstractions for temporal safety, which addresses a predominant component of runtime costs in other full memory safety defenses. User-provided translations showcase a rich landscape of specialized strategies to translate the same C program in different ways to safe Rust, which future automatic translators can consider.
- Abstract(参考訳): Rustは、未使用のCプログラムが楽しむことのない保証として、プログラムの完全なメモリ安全性を提供することを目指している。
既存のCコードをRustに変換するのは,どの程度難しいのでしょう?
自動CからRustへの翻訳から補完的なビューを得るため、人間に現実世界のCプログラムをRustに変換するよう依頼するユーザスタディを報告します。
私たちの参加者は安全なRust翻訳を作成できますが、最先端の自動ツールではそうできません。
分析の結果,ユーザによるハイレベル戦略は,自動ツールとは大きく異なることが明らかとなった。
また、ユーザーは時間的安全のためにゼロコスト(静的)の抽象化を選択することが多い。
ユーザ提供の翻訳では、Rustを安全にするために、同じCプログラムをさまざまな方法で翻訳する専門的な戦略が紹介されている。
関連論文リスト
- ReF Decompile: Relabeling and Function Call Enhanced Decompile [50.86228893636785]
逆コンパイルの目標は、コンパイルされた低レベルコード(アセンブリコードなど)を高レベルプログラミング言語に変換することである。
このタスクは、脆弱性識別、マルウェア分析、レガシーソフトウェアマイグレーションなど、さまざまなリバースエンジニアリングアプリケーションをサポートする。
論文 参考訳(メタデータ) (2025-02-17T12:38:57Z) - C2SaferRust: Transforming C Projects into Safer Rust with NeuroSymbolic Techniques [16.111888466557144]
我々はC2SaferRustを紹介します。
最初にC2Rustを使って、Cコードを非慣用的で安全でないRustに変換する。
安全でないRustコードをスライスに分解し、LLMによってより安全なRustに個別に変換します。
各スライスを処理した後、エンドツーエンドのテストケースを実行して、コードが期待通りに機能していることを確認する。
論文 参考訳(メタデータ) (2025-01-24T05:53:07Z) - Syzygy: Dual Code-Test C to (safe) Rust Translation using LLMs and Dynamic Analysis [8.361424157571468]
Syzygyは、C言語を安全なRustに変換する自動化アプローチである。
これは、Rustのコード翻訳を安全にする上で、これまでで最大の自動化およびテスト検証済みのCである。
論文 参考訳(メタデータ) (2024-12-18T18:55:46Z) - Bringing Rust to Safety-Critical Systems in Space [1.0742675209112622]
Rustは、バグ導入の可能性を劇的に削減し、より安全で安全なコードを生成することを目的としている。
この作業は、Rustで安全クリティカルな宇宙システムを開発するための一連のレコメンデーションを提供する。
論文 参考訳(メタデータ) (2024-05-28T12:48:47Z) - Towards a Transpiler for C/C++ to Safer Rust [0.10993800728351737]
RustはMozillaが開発したプログラミング言語で、パフォーマンスと安全性に重点を置いている。
既存のC++コードベースをRustに変換する方法も注目されている。
論文 参考訳(メタデータ) (2024-01-16T10:35:59Z) - Guess & Sketch: Language Model Guided Transpilation [59.02147255276078]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - Fixing Rust Compilation Errors using LLMs [2.1781086368581932]
Rustプログラミング言語は、C/C++のような従来の安全でない代替言語よりも、低レベルのシステムプログラミング言語に実行可能な選択肢として、自らを確立している。
本稿では,Large Language Models(LLMs)の創発的機能を活用し,Rustコンパイルエラーの修正を自動的に提案するRustAssistantというツールを提案する。
RustAssistantは、人気のあるオープンソースRustリポジトリの実際のコンパイルエラーに対して、約74%の驚くべきピーク精度を達成することができる。
論文 参考訳(メタデータ) (2023-08-09T18:30:27Z) - Adapting Language Models to Compress Contexts [71.98287002918941]
トランスフォーマーベースの言語モデル(LM)は強力で広く適用可能なツールであるが、その有用性は有限コンテキストウィンドウによって制限される。
本稿では,事前学習したLMを,長いコンテキストをコンパクトな要約ベクトルに圧縮可能なAutoCompressorに適応させることを提案する。
最大30,720個のトークンのシーケンスでOPTとLlama-2モデルを微調整し、AutoCompressorが長いコンテキストを使ってパープレキシティを向上できることを示す。
論文 参考訳(メタデータ) (2023-05-24T06:42:44Z) - User-Centric Evaluation of OCR Systems for Kwak'wala [92.73847703011353]
OCRを利用すると、文化的に価値ある文書の書き起こしに費やした時間を50%以上削減できることを示す。
この結果から,OCRツールが下流言語ドキュメントや再生作業において持つ潜在的なメリットが示された。
論文 参考訳(メタデータ) (2023-02-26T21:41:15Z) - Safe Deep Reinforcement Learning by Verifying Task-Level Properties [84.64203221849648]
コスト関数は、安全深層強化学習(DRL)において一般的に用いられる。
このコストは通常、国家空間における政策決定のリスクの定量化が難しいため、指標関数として符号化される。
本稿では,ドメイン知識を用いて,そのような状態に近接するリスクを定量化するための代替手法について検討する。
論文 参考訳(メタデータ) (2023-02-20T15:24:06Z) - OCR Post Correction for Endangered Language Texts [113.8242302688894]
我々は、3つの危惧言語でスキャンされた書籍の書き起こしのベンチマークデータセットを作成する。
本稿では,汎用OCRツールがデータ・スカース・セッティングに対して堅牢でないかを体系的に分析する。
我々は,このデータ・スカース・セッティングにおけるトレーニングを容易にするために,OCRポスト補正法を開発した。
論文 参考訳(メタデータ) (2020-11-10T21:21:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。