2025-11-14T08:10:11.695880

Project-Level C-to-Rust Translation via Synergistic Integration of Knowledge Graphs and Large Language Models

Yuan, Mao, Chen et al.
Translating C code into safe Rust is an effective way to ensure its memory safety. Compared to rule-based translation which produces Rust code that remains largely unsafe, LLM-based methods can generate more idiomatic and safer Rust code because LLMs have been trained on vast amount of human-written idiomatic code. Although promising, existing LLM-based methods still struggle with project-level C-to-Rust translation. They typically partition a C project into smaller units (\eg{} functions) based on call graphs and translate them bottom-up to resolve program dependencies. However, this bottom-up, unit-by-unit paradigm often fails to translate pointers due to the lack of a global perspective on their usage. To address this problem, we propose a novel C-Rust Pointer Knowledge Graph (KG) that enriches a code-dependency graph with two types of pointer semantics: (i) pointer-usage information which record global behaviors such as points-to flows and map lower-level struct usage to higher-level units; and (ii) Rust-oriented annotations which encode ownership, mutability, nullability, and lifetime. Synthesizing the \kg{} with LLMs, we further propose \ourtool{}, which implements a project-level C-to-Rust translation technique. In \ourtool{}, the \kg{} provides LLMs with comprehensive pointer semantics from a global perspective, thus guiding LLMs towards generating safe and idiomatic Rust code from a given C project. Our experiments show that \ourtool{} reduces unsafe usages in translated Rust by 99.9\% compared to both rule-based translation and traditional LLM-based rewriting, while achieving an average 29.3\% higher functional correctness than those fuzzing-enhanced LLM methods.
academic

āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āĻāĻŦāĻ‚ āĻŦ⧃āĻšā§Ž āĻ­āĻžāώāĻž āĻŽāĻĄā§‡āϞ⧇āϰ āϏāĻŽāĻ¨ā§āĻŦāĻŋāϤ āĻāϕ⧀āĻ•āϰāϪ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ C āĻĨ⧇āϕ⧇ Rust āĻ…āύ⧁āĻŦāĻžāĻĻ

āĻŽā§ŒāϞāĻŋāĻ• āϤāĻĨā§āϝ

  • āĻĒ⧇āĻĒāĻžāϰ āφāχāĻĄāĻŋ: 2510.10956
  • āĻļāĻŋāϰ⧋āύāĻžāĻŽ: Project-Level C-to-Rust Translation via Synergistic Integration of Knowledge Graphs and Large Language Models
  • āϞ⧇āĻ–āĻ•: Zhiqiang Yuan, Wenjun Mao, Zhuo Chen, Xiyue Shang, Chong Wang, Yiling Lou, Xin Peng
  • āĻļā§āϰ⧇āĻŖā§€āĻŦāĻŋāĻ­āĻžāĻ—: cs.SE (āϏāĻĢāϟāĻ“āϝāĻŧā§āϝāĻžāϰ āχāĻžā§āϜāĻŋāύāĻŋāϝāĻŧāĻžāϰāĻŋāĻ‚), cs.AI (āĻ•ā§ƒāĻ¤ā§āϰāĻŋāĻŽ āĻŦ⧁āĻĻā§āϧāĻŋāĻŽāĻ¤ā§āϤāĻž)
  • āĻĒā§āϰāĻ•āĻžāĻļāύāĻžāϰ āϏāĻŽāϝāĻŧ: ⧍ā§Ļ⧍ā§Ģ āϏāĻžāϞ⧇āϰ ā§§ā§Š āĻ…āĻ•ā§āĻŸā§‹āĻŦāϰ
  • āĻĒ⧇āĻĒāĻžāϰ āϞāĻŋāĻ™ā§āĻ•: https://arxiv.org/abs/2510.10956

āϏāĻžāϰāϏāĻ‚āĻ•ā§āώ⧇āĻĒ

C āϕ⧋āĻĄ āĻĨ⧇āϕ⧇ āύāĻŋāϰāĻžāĻĒāĻĻ Rust āϕ⧋āĻĄā§‡ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•āϰāĻž āĻ¸ā§āĻŽā§ƒāϤāĻŋ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰāĻžāϰ āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻĒāĻĻā§āϧāϤāĻŋāĨ¤ āĻŦ⧃āĻšā§Ž āĻĒāϰāĻŋāĻŽāĻžāĻŖ āĻ…āύāĻŋāϰāĻžāĻĒāĻĻ āϕ⧋āĻĄ āĻ‰ā§ŽāĻĒāĻžāĻĻāύāĻ•āĻžāϰ⧀ āύāĻŋāϝāĻŧāĻŽ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻ…āύ⧁āĻŦāĻžāĻĻ āĻĒāĻĻā§āϧāϤāĻŋāϰ āϤ⧁āϞāύāĻžāϝāĻŧ, āĻŦ⧃āĻšā§Ž āĻ­āĻžāώāĻž āĻŽāĻĄā§‡āϞ (LLM) āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒāĻĻā§āϧāϤāĻŋ āφāϰāĻ“ āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ• āĻāĻŦāĻ‚ āύāĻŋāϰāĻžāĻĒāĻĻ Rust āϕ⧋āĻĄ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āϤāĻŦ⧇, āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ LLM āĻĒāĻĻā§āϧāϤāĻŋāϗ⧁āϞāĻŋ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ C āĻĨ⧇āϕ⧇ Rust āĻ…āύ⧁āĻŦāĻžāĻĻ⧇ āĻāĻ–āύāĻ“ āĻ•āĻ āĻŋāύāϤāĻžāϰ āϏāĻŽā§āĻŽā§āĻ–ā§€āύ, āĻŦāĻŋāĻļ⧇āώāϤ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻĒāϰāĻŋāϚāĻžāϞāύāĻžāϝāĻŧ āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āĻĻ⧃āĻˇā§āϟāĻŋāĻ­āĻ™ā§āĻ—āĻŋāϰ āĻ…āĻ­āĻžāĻŦāĨ¤ āĻāχ āϏāĻŽāĻ¸ā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύ⧇āϰ āϜāĻ¨ā§āϝ, āĻāχ āĻĒāĻ¤ā§āϰāϟāĻŋ āĻāĻ•āϟāĻŋ āωāĻĒāĻ¨ā§āϝāĻžāϏ C-Rust āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ (KG) āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦ āĻ•āϰ⧇, āϝāĻž āϕ⧋āĻĄ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āĻ—ā§āϰāĻžāĻĢāϕ⧇ āĻĻ⧁āϟāĻŋ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻĻāĻŋāϝāĻŧ⧇ āϏāĻŽā§ƒāĻĻā§āϧ āĻ•āϰ⧇: (1) āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āφāϚāϰāĻŖ āϰ⧇āĻ•āĻ°ā§āĻĄ āĻ•āϰāĻž āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ; (2) āĻŽāĻžāϞāĻŋāĻ•āĻžāύāĻž, āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϝ⧋āĻ—ā§āϝāϤāĻž, āĻļā§‚āĻ¨ā§āϝāϤāĻž āĻāĻŦāĻ‚ āĻœā§€āĻŦāύāĻ•āĻžāϞ āĻāύāϕ⧋āĻĄ āĻ•āϰāĻž Rust-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻ¨ā§āϤāĻŦā§āϝāĨ¤ āĻāχ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ⧇āϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇, PTRMAPPER āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋ āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āϝāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ C āĻĨ⧇āϕ⧇ Rust āĻ…āύ⧁āĻŦāĻžāĻĻ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻ•āϰ⧇āĨ¤ āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āĻĻ⧇āĻ–āĻžāϝāĻŧ āϝ⧇ PTRMAPPER āύāĻŋāϝāĻŧāĻŽ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻāĻŦāĻ‚ āϐāϤāĻŋāĻšā§āϝāĻŦāĻžāĻšā§€ LLM āĻĒāĻĻā§āϧāϤāĻŋāϰ āϤ⧁āϞāύāĻžāϝāĻŧ ⧝⧝.⧝% āĻ…āύāĻŋāϰāĻžāĻĒāĻĻ āϕ⧋āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻšā§āϰāĻžāϏ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ⧀ āϏāĻ āĻŋāĻ•āϤāĻžāϝāĻŧ āĻ—āĻĄāĻŧ⧇ ⧍⧝.ā§Š% āωāĻ¨ā§āύāϤāĻŋ āĻ•āϰ⧇āĨ¤

āĻ—āĻŦ⧇āώāĻŖāĻž āĻĒāϟāĻ­ā§‚āĻŽāĻŋ āĻāĻŦāĻ‚ āĻĒā§āϰ⧇āϰāĻŖāĻž

ā§§. āϏāĻŽāĻ¸ā§āϝāĻž āϏāĻ‚āĻœā§āĻžāĻž

C āĻ­āĻžāώāĻž āĻ…āĻĒāĻžāϰ⧇āϟāĻŋāĻ‚ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ, āĻāĻŽā§āĻŦ⧇āĻĄā§‡āĻĄ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻŦāĻ‚ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž-āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ⧇ āĻŦā§āϝāĻžāĻĒāĻ•āĻ­āĻžāĻŦ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻāϰ āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞ āĻ¸ā§āĻŽā§ƒāϤāĻŋ āĻŦā§āϝāĻŦāĻ¸ā§āĻĨāĻžāĻĒāύāĻž āĻāĻŦāĻ‚ āϏāϰāĻžāϏāϰāĻŋ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻ…āĻĒāĻžāϰ⧇āĻļāύ āĻĒā§āϰāĻžāϝāĻŧāĻļāχ āĻŦāĻžāĻĢāĻžāϰ āĻ“āĻ­āĻžāϰāĻĢā§āϞ⧋, āĻ¸ā§āĻŽā§ƒāϤāĻŋ āĻĢāĻžāρāϏ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻĻ⧁āĻ°ā§āĻŦāϞāϤāĻžāϰ āĻ•āĻžāϰāĻŖ āĻšāϝāĻŧāĨ¤ Rust āĻāĻ•āϟāĻŋ āφāϧ⧁āύāĻŋāĻ• āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻšāĻŋāϏāĻžāĻŦ⧇, C āĻ­āĻžāώāĻžāϰ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻŦāϜāĻžāϝāĻŧ āϰ⧇āϖ⧇ āĻ¸ā§āĻŽā§ƒāϤāĻŋ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧇āĨ¤ āĻ…āϤāĻāĻŦ, āωāĻ¤ā§āϤāϰāĻžāϧāĻŋāĻ•āĻžāϰ C āϕ⧋āĻĄāϕ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ Rust-āĻ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•āϰāĻž āĻāĻ•āϟāĻŋ āϜāϰ⧁āϰāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤

⧍. āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āĻĒāĻĻā§āϧāϤāĻŋāϰ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž

  • āύāĻŋāϝāĻŧāĻŽ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒāĻĻā§āϧāϤāĻŋ: āĻĒā§‚āĻ°ā§āĻŦāύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āύāĻŋāϝāĻŧāĻŽā§‡āϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇, āĻ‰ā§ŽāĻĒāĻžāĻĻāĻŋāϤ Rust āϕ⧋āĻĄ āĻŦā§āϝāĻžāĻĒāĻ•āĻ­āĻžāĻŦ⧇ unsafe āĻŦā§āϞāĻ•, āĻ•āĻžāρāϚāĻž āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻāĻŦāĻ‚ āĻŦāĻžāĻšā§āϝāĻŋāĻ• āĻĢāĻžāĻ‚āĻļāύ āĻ•āϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇, āĻāĻ–āύāĻ“ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻā§āρāĻ•āĻŋ āϰāϝāĻŧ⧇āϛ⧇
  • āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ LLM āĻĒāĻĻā§āϧāϤāĻŋ: āύāĻŋāĻŽā§āύ-āĻĨ⧇āϕ⧇-āωāĻĒāϰ⧇āϰ āĻĻāĻŋāϕ⧇ āĻāĻ•āĻ• āχāωāύāĻŋāϟ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻĒā§āϝāĻžāϰāĻžāĻĄāĻžāχāĻŽ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇, āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āĻĻ⧃āĻˇā§āϟāĻŋāĻ­āĻ™ā§āĻ—āĻŋāϰ āĻ…āĻ­āĻžāĻŦ, āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻ…āύ⧁āĻŦāĻžāĻĻ⧇ āϏāĻ‚āĻœā§āĻžāĻž-āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻĒā§āϰāĻžāϝāĻŧāĻļāχ āϘāĻŸā§‡

ā§Š. āĻŽā§‚āϞ āĻšā§āϝāĻžāϞ⧇āĻžā§āϜ

C āĻāĻŦāĻ‚ Rust āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇ āĻŽā§ŒāϞāĻŋāĻ• āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āϰāϝāĻŧ⧇āϛ⧇:

  • C āĻ­āĻžāώāĻž: āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻ…āĻ¤ā§āϝāĻ¨ā§āϤ āύāĻŽāύ⧀āϝāĻŧ, āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāύ⧇āϰ āϏāĻŽāϝāĻŧ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻĒā§āϰāĻ•āĻžāϰ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰ⧇, āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϏāĻŽāϝāĻŧ āĻ¸ā§āĻŦāĻžāϧ⧀āύāĻ­āĻžāĻŦ⧇ āĻĒāĻĄāĻŧāĻž-āϞ⧇āĻ–āĻž-āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇
  • Rust āĻ­āĻžāώāĻž: āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āĻ ā§‹āϰāĻ­āĻžāĻŦ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ, āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāύ⧇āϰ āϏāĻŽāϝāĻŧ āĻ…āĻŦāĻļā§āϝāχ āĻŽāĻžāϞāĻŋāĻ•āĻžāύāĻž, āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϝ⧋āĻ—ā§āϝāϤāĻž āĻāĻŦāĻ‚ āĻœā§€āĻŦāύāĻ•āĻžāϞ āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇, āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϏāĻŽāϝāĻŧ āĻ…āĻŦāĻļā§āϝāχ āϧāĻžāϰ āĻĒāϰ⧀āĻ•ā§āώāĻ• āύāĻŋāϝāĻŧāĻŽ āĻ•āĻ ā§‹āϰāĻ­āĻžāĻŦ⧇ āĻŽā§‡āύ⧇ āϚāϞāϤ⧇ āĻšāĻŦ⧇

āĻŽā§‚āϞ āĻ…āĻŦāĻĻāĻžāύ

ā§§. āωāĻĒāĻ¨ā§āϝāĻžāϏ C-Rust āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āĻĒā§āϰāĻ¸ā§āϤāĻžāĻŦ: āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻĒā§āϰāϏāĻ™ā§āĻ— āĻĨ⧇āϕ⧇ āϕ⧋āĻĄ āχāωāύāĻŋāϟ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž, āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ āĻāĻŦāĻ‚ Rust-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻ¨ā§āϤāĻŦā§āϝ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ­āĻžāĻŦ⧇ āĻŽāĻĄā§‡āϞ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇ ⧍. PTRMAPPER āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋ āĻĄāĻŋāϜāĻžāχāύ: C-Rust āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ KG āĻāĻŦāĻ‚ LLM āϏāĻšāϝ⧋āĻ—āĻŋāϤāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ C āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϕ⧇ āύāĻŋāϰāĻžāĻĒāĻĻ āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ• Rust āϕ⧋āĻĄā§‡ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•āϰ⧇ āĨŠ. āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āωāĻ¨ā§āύāϤāĻŋ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ: āφāϰāĻ“ āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ•, āύāĻŋāϰāĻžāĻĒāĻĻ āĻāĻŦāĻ‚ āϏāĻ āĻŋāĻ• Rust āϕ⧋āĻĄ āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āĨĒ. āĻŦā§āϝāĻžāĻĒāĻ• āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻĒā§āϰāĻĻāĻžāύ: āĻŦāĻŋāϞ⧋āĻĒāύ āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ āĻāĻŦāĻ‚ Rust-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻ¨ā§āϤāĻŦā§āϝ⧇āϰ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āωāĻ¨ā§āύāϤ āĻ•āϰāĻžāϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦ āĻĒā§āϰāĻŽāĻžāĻŖ āĻ•āϰ⧇

āĻĒāĻĻā§āϧāϤāĻŋ āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ

āĻ•āĻžāĻœā§‡āϰ āϏāĻ‚āĻœā§āĻžāĻž

āĻāĻ•āϟāĻŋ C āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϞ⧇, āĻāϟāĻŋāϕ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻ•āĻžāĻ°ā§āϝāĻ•āϰāĻ­āĻžāĻŦ⧇ āϏāĻŽāϤ⧁āĻ˛ā§āϝ, āĻ¸ā§āĻŽā§ƒāϤāĻŋ-āύāĻŋāϰāĻžāĻĒāĻĻ āĻāĻŦāĻ‚ āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ• Rust āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•āϰ⧁āύāĨ¤ āχāύāĻĒ⧁āϟ āĻšāϞ C āĻ‰ā§ŽāϏ āϕ⧋āĻĄ āĻĢāĻžāχāϞ⧇āϰ āϏāĻ‚āĻ—ā§āϰāĻš, āφāωāϟāĻĒ⧁āϟ āĻšāϞ āϏāĻ‚āĻ•āϞāύāϝ⧋āĻ—ā§āϝ āĻāĻŦāĻ‚ āϚāĻžāϞāύāĻžāϝ⧋āĻ—ā§āϝ Rust āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāĨ¤

āĻŽāĻĄā§‡āϞ āφāĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āϚāĻžāϰ

PTRMAPPER āϤāĻŋāύāϟāĻŋ āĻĒā§āϰāϧāĻžāύ āĻĒāĻ°ā§āϝāĻžāϝāĻŧ āύāĻŋāϝāĻŧ⧇ āĻ—āĻ āĻŋāϤ:

ā§§. C-Rust āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ

āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āĻ¸ā§āĻ•āĻŋāĻŽāĻž āĻĄāĻŋāϜāĻžāχāύ:

  • āϕ⧋āĻĄ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āĻ—ā§āϰāĻžāĻĢ: āϕ⧋āĻĄ āχāωāύāĻŋāϟ (āĻĢāĻžāĻ‚āĻļāύ, āĻ•āĻžāĻ āĻžāĻŽā§‹, āĻ—āĻŖāύāĻž āχāĻ¤ā§āϝāĻžāĻĻāĻŋ) āĻŽāĻ§ā§āϝ⧇ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āϏāĻŽā§āĻĒāĻ°ā§āĻ• āĻŦāĻ°ā§āĻŖāύāĻž āĻ•āϰ⧇
  • āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ: āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āφāϚāϰāĻŖ āĻ•ā§āϝāĻžāĻĒāϚāĻžāϰ āĻ•āϰ⧇, āϝāĻžāϰ āĻŽāĻ§ā§āϝ⧇ āϰāϝāĻŧ⧇āϛ⧇:
    • āϏāĻ¤ā§āϤāĻž: Param (āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ), Value (āϰāĻŋāϟāĻžāĻ°ā§āύ āĻŽāĻžāύ), Member (āϏāĻĻāĻ¸ā§āϝ), Pointer (āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ) āχāĻ¤ā§āϝāĻžāĻĻāĻŋ
    • āϏāĻŽā§āĻĒāĻ°ā§āĻ•: derivesFrom (āωāĻĻā§āĻ­ā§‚āϤ āϏāĻŽā§āĻĒāĻ°ā§āĻ•), mayAlias/noAlias (āωāĻĒāύāĻžāĻŽ āϏāĻŽā§āĻĒāĻ°ā§āĻ•), pointsTo (āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āϏāĻŽā§āĻĒāĻ°ā§āĻ•) āχāĻ¤ā§āϝāĻžāĻĻāĻŋ
  • Rust-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻ¨ā§āϤāĻŦā§āϝ: āĻŽāĻžāϞāĻŋāĻ•āĻžāύāĻž, āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϝ⧋āĻ—ā§āϝāϤāĻž, āĻļā§‚āĻ¨ā§āϝāϤāĻž, āĻœā§€āĻŦāύāĻ•āĻžāϞ āχāĻ¤ā§āϝāĻžāĻĻāĻŋ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āϧāĻžāϰāĻŖ āĻ•āϰ⧇

āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž: āĨ§. āϕ⧋āĻĄ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āĻ—ā§āϰāĻžāĻĢ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ: āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āϕ⧋āĻĄ āχāωāύāĻŋāϟ āĻāĻŦāĻ‚ āϤāĻžāĻĻ⧇āϰ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āϏāĻŽā§āĻĒāĻ°ā§āĻ• āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ āĻ•āϰ⧇ āĨ¨. āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ: āĻĒā§āϰāϏāĻ™ā§āĻ—-āϏāĻ‚āĻŦ⧇āĻĻāύāĻļā§€āϞ, āĻ•ā§āώ⧇āĻ¤ā§āϰ-āϏāĻ‚āĻŦ⧇āĻĻāύāĻļā§€āϞ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻ•ā§ŒāĻļāϞ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇ āĨŠ. Rust-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻ¨ā§āϤāĻŦā§āϝ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ: āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻœā§€āĻŦāύāĻ•āĻžāϞ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻŽāĻ¨ā§āϤāĻŦā§āϝ āĻ•āϰ⧇

āĨ¨. KG-āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāϤ āϕ⧋āĻĄ āĻ…āύ⧁āĻŦāĻžāĻĻ

āĻ…āύ⧁āĻŦāĻžāĻĻ āχāωāύāĻŋāϟ āϏāύāĻžāĻ•ā§āϤāĻ•āϰāĻŖ āĻāĻŦāĻ‚ āϏāĻžāϜāĻžāύ⧋:

  • Tarjan āĻ…ā§āϝāĻžāϞāĻ—āϰāĻŋāĻĻāĻŽ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻĻ⧃āĻĸāĻŧāĻ­āĻžāĻŦ⧇ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āωāĻĒāĻžāĻĻāĻžāύ (SCC) āϏāύāĻžāĻ•ā§āϤ āĻ•āϰ⧇
  • āĻĒā§āϰāϤāĻŋāϟāĻŋ SCC āϕ⧇ āĻ¸ā§āĻŦāĻžāϧ⧀āύ āĻ…āύ⧁āĻŦāĻžāĻĻ āχāωāύāĻŋāϟ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻŦāĻŋāĻŦ⧇āϚāύāĻž āĻ•āϰ⧇
  • āϟāĻĒā§‹āϞāϜāĻŋāĻ•ā§āϝāĻžāϞ āϏāĻžāϜāĻžāύ⧋ āύāĻŋāĻŽā§āύ-āĻĨ⧇āϕ⧇-āωāĻĒāϰ⧇āϰ āĻĻāĻŋāϕ⧇ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•ā§āϰāĻŽ āύāĻŋāĻ°ā§āϧāĻžāϰāĻŖ āĻ•āϰ⧇

āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ: āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ…āύ⧁āĻŦāĻžāĻĻ āχāωāύāĻŋāĻŸā§‡āϰ āϜāĻ¨ā§āϝ KG āĻĨ⧇āϕ⧇ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻœā§āĻžāĻžāύ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ āĻ•āϰ⧇, <āϏāĻ¤ā§āϤāĻžā§§, āϏāĻŽā§āĻĒāĻ°ā§āĻ•, āϏāĻ¤ā§āϤāĻžāĨ¨> āĻ¤ā§āϰāĻŋāϗ⧁āĻŖ āφāĻ•āĻžāϰ⧇ LLM-āϕ⧇ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤

āĻŦāĻ°ā§āϧāύāĻļā§€āϞ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻāĻŦāĻ‚ āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ:

  • āĻ…āύ⧁āĻŦāĻžāĻĻ āχāωāύāĻŋāϟ, āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻœā§āĻžāĻžāύ āĻāĻŦāĻ‚ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āĻ…āύ⧁āĻŦāĻžāĻĻāĻŋāϤ Rust āĻĒā§āϰāϏāĻ™ā§āĻ— āĻ…āύ⧁āĻŦāĻžāĻĻ āĻĒā§āϰāĻŽā§āĻĒāĻŸā§‡ āĻāϕ⧀āĻ­ā§‚āϤ āĻ•āϰ⧇
  • āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ…āύ⧁āĻŦāĻžāĻĻ āχāωāύāĻŋāϟ āϤ⧈āϰāĻŋāϰ āĻĒāϰ⧇ āĻ…āĻŦāĻŋāϞāĻŽā§āĻŦ⧇ Rust āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇ āĻāϕ⧀āĻ­ā§‚āϤ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āϏāĻ‚āĻ•āϞāύ āϝāĻžāϚāĻžāχ āĻ•āϰ⧇
  • āĻ¤ā§āϰ⧁āϟāĻŋ āĻĻ⧇āĻ–āĻž āĻĻāĻŋāϞ⧇ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āĻļā§‹āϧāύ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϚāĻžāϞ⧁ āĻ•āϰ⧇

āĨŠ. KG-āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāϤ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āĻļā§‹āϧāύ

Rust āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇āϰ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ KG āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ LLM-āϕ⧇ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻĒā§āϰāϏāĻ™ā§āĻ— āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇:

  • āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āϏāĻŽā§āĻĒāĻ°ā§āĻ• āĻ¤ā§āϰ⧁āϟāĻŋ-āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āϕ⧋āĻĄ āχāωāύāĻŋāϟ āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ āϏāύāĻžāĻ•ā§āϤ āĻ•āϰāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰ⧇
  • Rust-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻ¨ā§āϤāĻŦā§āϝ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āϏāĻ‚āĻļā§‹āϧāύ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻ āĻŋāĻ• āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇

āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋāĻ—āϤ āωāĻĻā§āĻ­āĻžāĻŦāύ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟ

āĨ§. āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻŽāĻĄā§‡āϞāĻŋāĻ‚: āĻĒā§āϰāĻĨāĻŽāĻŦāĻžāϰ⧇āϰ āĻŽāϤ⧋ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ āĻāĻŦāĻ‚ Rust-āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ⧇ āĻāϕ⧀āĻ­ā§‚āϤ āĻ•āϰ⧇ āĨ¨. āϏāĻšāϝ⧋āĻ—āĻŋāϤāĻžāĻŽā§‚āϞāĻ• āĻ…āύ⧁āĻŦāĻžāĻĻ āĻĒā§āϝāĻžāϰāĻžāĻĄāĻžāχāĻŽ: āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ⧇āϰ āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āĻĻ⧃āĻˇā§āϟāĻŋāĻ­āĻ™ā§āĻ—āĻŋ āĻāĻŦāĻ‚ LLM-āĻāϰ āĻ‰ā§ŽāĻĒāĻžāĻĻāύ āĻ•ā§āώāĻŽāϤāĻž āĻāĻ•āĻ¤ā§āϰāĻŋāϤ āĻ•āϰ⧇ āĨŠ. āĻŦāĻ°ā§āϧāύāĻļā§€āϞ āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž: āϏāĻŽāϝāĻŧāĻŽāϤ⧋ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāύāĻžāĻ•ā§āϤ āĻāĻŦāĻ‚ āϏāĻ‚āĻļā§‹āϧāύ āĻ•āϰ⧇, āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻžā§āϚāϝāĻŧ āĻĒā§āϰāϤāĻŋāϰ⧋āϧ āĻ•āϰ⧇ āĨĒ. āĻŦ⧁āĻĻā§āϧāĻŋāĻŽāĻžāύ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āĻļā§‹āϧāύ: KG-āĻāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āϤāĻĨā§āϝ⧇āϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇, āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϏāĻ‚āĻ•āϞāĻ• āĻ¤ā§āϰ⧁āϟāĻŋ āϤāĻĨā§āϝ⧇āϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇ āύāĻž

āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āϏ⧇āϟāφāĻĒ

āĻĄā§‡āϟāĻžāϏ⧇āϟ

CROWN āĻĄā§‡āϟāĻžāϏ⧇āϟ āĻĨ⧇āϕ⧇ ā§§āĨŦāϟāĻŋ āĻŦāĻžāĻ¸ā§āϤāĻŦ C āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇, āϕ⧋āĻĄ āϞāĻžāχāύ āϏāĻ‚āĻ–ā§āϝāĻž āĨ§āĨĢāĨĒ āĻĨ⧇āϕ⧇ āĨ§āĨĒ,āĨŽāĨ¨āĨ¯ āĻĒāĻ°ā§āϝāĻ¨ā§āϤ, āϝāĻžāϰ āĻŽāĻ§ā§āϝ⧇ āϰāϝāĻŧ⧇āϛ⧇:

  • avl, buffer, genann, quadtree, rgba, urlparser āχāĻ¤ā§āϝāĻžāĻĻāĻŋ āϛ⧋āϟ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ
  • bzip2, heman, lodepng āχāĻ¤ā§āϝāĻžāĻĻāĻŋ āĻŦāĻĄāĻŧ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ

āĻ•āĻžāĻ°ā§āϝāĻ•āϰ⧀ āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻž āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ⧇āϰ āϜāĻ¨ā§āϝ, āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞāĻŋ āχāωāύāĻŋāϟ āĻĒāϰ⧀āĻ•ā§āώāĻž āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āĨŽāĨ§.āĨĒ%-āĨ¯āĨ­.āĨ­% āϞāĻžāχāύ āĻ•āĻ­āĻžāϰ⧇āϜ āĻāĻŦāĻ‚ āĨ¯āĨ¨.āĨ¯%-āĨ§āĨĻāĨĻ.āĨĻ% āĻĢāĻžāĻ‚āĻļāύ āĻ•āĻ­āĻžāϰ⧇āϜ āĻ…āĻ°ā§āϜāύ āĻ•āϰ⧇āϛ⧇āĨ¤

āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ āϏ⧂āϚāĻ•

āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ•āϤāĻž āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ:

  • Lint Alert Count: Rust-Clippy āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ…āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ• āϕ⧋āĻĄ āϏāϤāĻ°ā§āĻ•āϤāĻž āϏāĻ‚āĻ–ā§āϝāĻž āĻ—āĻŖāύāĻž āĻ•āϰ⧇
  • Unsafe Usage Count: Cargo-geiger āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ unsafe āϕ⧋āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻ—āĻŖāύāĻž āĻ•āϰ⧇

āϏāĻ āĻŋāĻ•āϤāĻž āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ:

  • Compiled: āϏāĻĢāϞāĻ­āĻžāĻŦ⧇ āϏāĻ‚āĻ•āϞāĻŋāϤ āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āĻ…āύ⧁āĻĒāĻžāϤ
  • Equiv.: āχāωāύāĻŋāϟ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻĒāĻžāϏ āĻ•āϰāĻž āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āĻ…āύ⧁āĻĒāĻžāϤ

āϤ⧁āϞāύāĻž āĻĒāĻĻā§āϧāϤāĻŋ

  • āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ•āϤāĻž āϤ⧁āϞāύāĻž: CROWN (āύāĻŋāϝāĻŧāĻŽ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ•), PR2 (LLM āĻĒ⧁āύāĻ°ā§āϞ⧇āĻ–āύ)
  • āϏāĻ āĻŋāĻ•āϤāĻž āϤ⧁āϞāύāĻž: FLOURINE (āĻĢāĻžāϜāĻŋ āĻĒāϰ⧀āĻ•ā§āώāĻž-āĻŦāĻ°ā§āϧāĻŋāϤ LLM āĻĒāĻĻā§āϧāϤāĻŋ)
  • āĻŦāĻŋāϞ⧋āĻĒāύ āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž: PTRTRANSPS, PTRTRANSPU, PTRTRANSRA, PTRTRANSEC āχāĻ¤ā§āϝāĻžāĻĻāĻŋ āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻ¨ā§āϟ

āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻŦāĻŋāĻŦāϰāĻŖ

  • LLM: ChatGPT-4o, temperature=0
  • āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ: Clang, Doxygen, SVF āĻĢā§āϰ⧇āĻŽāĻ“āϝāĻŧāĻžāĻ°ā§āĻ•
  • āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āĻļā§‹āϧāύ: āϏāĻ°ā§āĻŦā§‹āĻšā§āϚ āĨĢ āĻĒ⧁āύāϰāĻžāĻŦ⧃āĻ¤ā§āϤāĻŋ
  • āϏāĻ‚āĻ•āϞāύ āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ: cargo check

āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āĻĢāϞāĻžāĻĢāϞ

āĻĒā§āϰāϧāĻžāύ āĻĢāϞāĻžāĻĢāϞ

āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ•āϤāĻž āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āωāĻ¨ā§āύāϤ:

  • CROWN āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ: Lint āϏāϤāĻ°ā§āĻ•āϤāĻž āĨ¯āĨĒ.āĨ¯% āĻšā§āϰāĻžāϏ (āĨŦ,āĨŽāĨĻāĨ¨â†’āĨŠāĨĒāĨ¯), unsafe āĻŦā§āϝāĻŦāĻšāĻžāϰ āĨ¯āĨ¯.āĨ¯% āĻšā§āϰāĻžāϏ (āĨ§āĨĒāĨ§,āĨŽāĨŦāĨŦ→āĨŽāĨĢ)
  • PR2 āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ: Lint āϏāϤāĻ°ā§āĻ•āϤāĻž āĨ¯āĨ§.āĨŽ% āĻšā§āϰāĻžāϏ (āĨĒ,āĨ¨āĨ­āĨ¨â†’āĨŠāĨĒāĨ¯), unsafe āĻŦā§āϝāĻŦāĻšāĻžāϰ āĨ¯āĨ¯.āĨ¯% āĻšā§āϰāĻžāϏ (āĨ§āĨŠāĨĒ,āĨ§āĨŽāĨĢ→āĨŽāĨĢ)

āϏāĻ āĻŋāĻ•āϤāĻž āĻŦā§āϝāĻžāĻĒāĻ•āĻ­āĻžāĻŦ⧇ āωāĻ¨ā§āύāϤ:

  • FLOURINE āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ: āϏāĻ‚āĻ•āϞāύ āϏāĻžāĻĢāĻ˛ā§āϝ⧇āϰ āĻšāĻžāϰ āĨ¨āĨŽ.āĨĒ% āĻŦ⧃āĻĻā§āϧāĻŋ (āĨ¯āĨŽ.āĨŠ% āĻŦāύāĻžāĻŽ āĨŦāĨ¯.āĨ¯%), āĻ•āĻžāĻ°ā§āϝāĻ•āϰ⧀ āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻžāϰ āĻšāĻžāϰ āĨ¨āĨ¯.āĨŠ% āĻŦ⧃āĻĻā§āϧāĻŋ (āĨŽāĨ§.āĨŦ% āĻŦāύāĻžāĻŽ āĨĢāĨ¨.āĨŠ%)
  • āϛ⧋āϟ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ (avl, rgba, ht, bst) āĨ§āĨĻāĨĻ% āĻ•āĻžāĻ°ā§āϝāĻ•āϰ⧀ āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻž āĻ…āĻ°ā§āϜāύ āĻ•āϰ⧇

āĻŦāĻŋāϞ⧋āĻĒāύ āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž

āĻŦāĻŋāϞ⧋āĻĒāύ āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āĻĒā§āϰāϤāĻŋāϟāĻŋ āωāĻĒāĻžāĻĻāĻžāύ⧇āϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦ āϝāĻžāϚāĻžāχ āĻ•āϰ⧇:

  • āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻ›āĻžāĻĄāĻŧāĻž (PTRTRANSPS): āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻžāϰ āĻšāĻžāϰ āĨŽāĨ§.āĨŦ% āĻĨ⧇āϕ⧇ āĨĢāĨ¯.āĨĢ% āĻšā§āϰāĻžāϏ, āĨ¨āĨ¨.āĨ§% āĻšā§āϰāĻžāϏ
  • āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ⧇āϰ āϤāĻĨā§āϝ (PTRTRANSRA): āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇āϰ āĻšā§‡āϝāĻŧ⧇ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻ•āĻŽ
  • āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ Rust āĻŽāĻ¨ā§āϤāĻŦā§āϝ (PTRTRANSPU): āĻāĻ•āχāĻ­āĻžāĻŦ⧇ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻšā§āϰāĻžāϏ
  • āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āĻļā§‹āϧāύ āĻ›āĻžāĻĄāĻŧāĻž (PTRTRANSEC): āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻžāϰ āĻšāĻžāϰ āĨŽāĨ§.āĨŦ% āĻĨ⧇āϕ⧇ āĨĢāĨĻ.āĨŽ% āĻšā§āϰāĻžāϏ, āĨŠāĨĻ.āĨŽ% āĻšā§āϰāĻžāϏ

āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻŦāĻŋāϤāϰāĻŖ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ

PTRMAPPER āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āϜāϟāĻŋāϞāϤāĻžāϝāĻŧ āĻ¸ā§āĻĨāĻŋāϤāĻŋāĻļā§€āϞ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇:

  • āϕ⧋āĻĄ āϞāĻžāχāύ āϏāĻ‚āĻ–ā§āϝāĻž: āϜāϟāĻŋāϞāϤāĻž āĻŦ⧃āĻĻā§āϧāĻŋāϰ āϏāĻžāĻĨ⧇ āϏāĻžāĻĨ⧇ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻ¸ā§āĻĨāĻŋāϤāĻŋāĻļā§€āϞ, FLOURINE āϤ⧀āĻŦā§āϰāĻ­āĻžāĻŦ⧇ āĻšā§āϰāĻžāϏ āĻĒāĻžāϝāĻŧ
  • āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āϏāĻŽā§āĻĒāĻ°ā§āĻ•: āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āϏāĻ‚āĻ–ā§āϝāĻž [āĨ§āĨŦ,āĨĒāĨĒ) āĻĨāĻžāĻ•āϞ⧇ āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻžāϰ āĻšāĻžāϰ āĨĢāĨ­.āĨ§%, FLOURINE āĨĻ%
  • āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āϏāĻ‚āĻ–ā§āϝāĻž: āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āϏāĻ‚āĻ–ā§āϝāĻž [āĨ¨āĨĻ,āĨĢāĨĻ) āĻĨāĻžāĻ•āϞ⧇ āϏāĻŽāϤ⧁āĻ˛ā§āϝāϤāĻžāϰ āĻšāĻžāϰ āĨĢāĨĻ.āĨĻ%, FLOURINE āĨĻ%

āϕ⧇āϏ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ

Quadtree āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇āϰ āωāĻĻāĻžāĻšāϰāĻŖ āĻĻāĻŋāϝāĻŧ⧇, PTRMAPPER āϕ⧀āĻ­āĻžāĻŦ⧇ āϜāϟāĻŋāϞ āϧāĻžāϰ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰ⧇ āϤāĻž āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇: āĨ§. tree āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻ…āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ⧀āϝāĻŧ āϧāĻžāϰ &Quadtree āĻšāĻ“āϝāĻŧāĻž āωāϚāĻŋāϤ āϤāĻž āϏāύāĻžāĻ•ā§āϤ āĻ•āϰ⧇ āĨ¨. root āϕ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ⧀āϝāĻŧ āϧāĻžāϰ &mut QuadtreeNode āĻšāĻŋāϏāĻžāĻŦ⧇ āφāϞāĻžāĻĻāĻž āĻ•āϰ⧇ āĨŠ. āϧāĻžāϰ āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻāĻĄāĻŧāĻžāϤ⧇ key_free āϕ⧇ āĻ¸ā§āĻŦāĻžāϧ⧀āύ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻšāĻŋāϏāĻžāĻŦ⧇ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ āĻ•āϰ⧇ āĨĒ. āϏāĻŽāĻ¸ā§āϤ āĻŽāĻžāϞāĻŋāĻ•āĻžāύāĻž āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰ⧇

āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āĻ•āĻžāϜ

C āĻĨ⧇āϕ⧇ Rust āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ—āĻŦ⧇āώāĻŖāĻž

āĨ§. āύāĻŋāϝāĻŧāĻŽ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒāĻĻā§āϧāϤāĻŋ: Corrode, C2RUST āχāĻ¤ā§āϝāĻžāĻĻāĻŋ, āĻŦāĻĄāĻŧ āĻĒāϰāĻŋāĻŽāĻžāĻŖ unsafe āϕ⧋āĻĄ āĻ‰ā§ŽāĻĒāĻžāĻĻāύ āĻ•āϰ⧇ āĨ¨. LLM āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒāĻĻā§āϧāϤāĻŋ: SPECTRA, FLOURINE āχāĻ¤ā§āϝāĻžāĻĻāĻŋ, āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āĻĻ⧃āĻˇā§āϟāĻŋāĻ­āĻ™ā§āĻ—āĻŋāϰ āĻ…āĻ­āĻžāĻŦ āĨŠ. āχāωāύāĻŋāϟ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻĒāĻĻā§āϧāϤāĻŋ: SYZYGY āχāĻ¤ā§āϝāĻžāĻĻāĻŋ, āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻšāĻžāϰāĻžāύ⧋āϰ āϏāĻŽāĻ¸ā§āϝāĻž āϰāϝāĻŧ⧇āϛ⧇

āĻāχ āĻĒāĻ¤ā§āϰ⧇āϰ āϏ⧁āĻŦāĻŋāϧāĻž

  • āĻĒā§āϰāĻĨāĻŽāĻŦāĻžāϰ⧇āϰ āĻŽāϤ⧋ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āϟāĻŋāĻ•āĻ­āĻžāĻŦ⧇ āĻŽāĻĄā§‡āϞ āĻ•āϰ⧇
  • āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻāĻŦāĻ‚ LLM āĻ‰ā§ŽāĻĒāĻžāĻĻāύ⧇āϰ āϏāĻšāϝ⧋āĻ—āĻŋāϤāĻžāĻŽā§‚āϞāĻ• āĻĒāĻĻā§āϧāϤāĻŋ
  • āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻāĻŦāĻ‚ āϏāĻ āĻŋāĻ•āϤāĻž āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āωāĻ¨ā§āύāϤ āĻ•āϰ⧇

āωāĻĒāϏāĻ‚āĻšāĻžāϰ āĻāĻŦāĻ‚ āφāϞ⧋āϚāύāĻž

āĻĒā§āϰāϧāĻžāύ āωāĻĒāϏāĻ‚āĻšāĻžāϰ

āĨ§. C-Rust āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ-āĻ¸ā§āϤāϰ⧇āϰ āĻ…āύ⧁āĻŦāĻžāĻĻ⧇ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ āĻšāĻžāϰāĻžāύ⧋āϰ āϏāĻŽāĻ¸ā§āϝāĻž āĻ•āĻžāĻ°ā§āϝāĻ•āϰāĻ­āĻžāĻŦ⧇ āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰ⧇ āĨ¨. āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻāĻŦāĻ‚ LLM āϏāĻšāϝ⧋āĻ—āĻŋāϤāĻž āĻāϕ⧀āĻ•āϰāĻŖ āĻ…āύ⧁āĻŦāĻžāĻĻ āϗ⧁āĻŖāĻŽāĻžāύ āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝāĻ­āĻžāĻŦ⧇ āωāĻ¨ā§āύāϤ āĻ•āϰ⧇ āĨŠ. āĻŦāĻ°ā§āϧāύāĻļā§€āϞ āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻāĻŦāĻ‚ āĻŦ⧁āĻĻā§āϧāĻŋāĻŽāĻžāύ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āĻļā§‹āϧāύ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻ…āύ⧁āĻŦāĻžāĻĻ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝāϤāĻž āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧇

āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž

āĨ§. āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ–āϰāϚ: āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āύāĻŋāĻ°ā§āĻŽāĻžāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āϏāĻŽāϝāĻŧ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĨ¨. āύāĻŋāϝāĻŧāĻŽ āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž: Rust āĻŽāĻ¨ā§āϤāĻŦā§āϝ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ āĻĒā§‚āĻ°ā§āĻŦāύāĻŋāĻ°ā§āϧāĻžāϰāĻŋāϤ āύāĻŋāϝāĻŧāĻŽā§‡āϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇, āϏāĻŽā§āĻ­āĻŦāϤ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻ­āĻžāϰ⧇āϜ āύ⧇āχ āĨŠ. āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ āĻ¸ā§āϕ⧇āϞ: āĻ…āϤāĻŋ āĻŦāĻĄāĻŧ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇āϰ āĻ¸ā§āϕ⧇āϞ⧇āĻŦāĻŋāϞāĻŋāϟāĻŋ āφāϰāĻ“ āϝāĻžāϚāĻžāχāĻ•āϰāϪ⧇āϰ āĻ…āĻĒ⧇āĻ•ā§āώāĻžāϝāĻŧ āĨĒ. āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞ āĻšāĻ¸ā§āϤāĻ•ā§āώ⧇āĻĒ: āϜāϟāĻŋāϞ āĻĒāϰāĻŋāĻ¸ā§āĻĨāĻŋāϤāĻŋāϤ⧇ āĻāĻ–āύāĻ“ āϏāĻžāĻŽāĻžāĻ¨ā§āϝ āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞ āϏāĻŽāĻ¨ā§āĻŦāϝāĻŧ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĻšāϤ⧇ āĻĒāĻžāϰ⧇

āĻ­āĻŦāĻŋāĻˇā§āϝāϤ āĻĻāĻŋāĻ•āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž

āĨ§. āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āύāĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻĻāĻ•ā§āώāϤāĻž āĻ…āĻĒā§āϟāĻŋāĻŽāĻžāχāϜ āĻ•āϰāĻž āĨ¨. āφāϰāĻ“ āĻŦ⧇āĻļāĻŋ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāώāĻž āĻœā§‹āĻĄāĻŧāĻžāϝāĻŧ āĻĒā§āϰāϏāĻžāϰāĻŋāϤ āĻ•āϰāĻž āĨŠ. āφāϰāĻ“ āĻŦ⧇āĻļāĻŋ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻ•ā§ŒāĻļāϞ āĻāϕ⧀āĻ­ā§‚āϤ āĻ•āϰāĻž āĨĒ. āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāϤāĻžāϰ āĻĄāĻŋāĻ—ā§āϰāĻŋ āωāĻ¨ā§āύāϤ āĻ•āϰāĻž

āĻ—āĻ­ā§€āϰ āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ

āϏ⧁āĻŦāĻŋāϧāĻž

āĨ§. āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ āωāĻĻā§āĻ­āĻžāĻŦāύ⧀: āĻĒā§āϰāĻĨāĻŽāĻŦāĻžāϰ⧇āϰ āĻŽāϤ⧋ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āĻāĻŦāĻ‚ LLM āϕ⧋āĻĄ āĻ…āύ⧁āĻŦāĻžāĻĻ⧇ āĻāĻ•āĻ¤ā§āϰāĻŋāϤ āĻ•āϰ⧇, āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āĻĒāĻĻā§āϧāϤāĻŋāϰ āĻŽā§‚āϞ āϏāĻŽāĻ¸ā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰ⧇ āĨ¨. āĻĒāĻĻā§āϧāϤāĻŋ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āϟāĻŋāĻ•: āϏāĻŽāĻ¸ā§āϝāĻž āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻĨ⧇āϕ⧇ āϏāĻŽāĻžāϧāĻžāύ āĻĄāĻŋāϜāĻžāχāύ āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ, āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋāĻ—āϤ āϰ⧁āϟ āĻ¸ā§āĻĒāĻˇā§āϟ āĨŠ. āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āĻŦā§āϝāĻžāĻĒāĻ•: āĨ§āĨŦāϟāĻŋ āĻŦāĻžāĻ¸ā§āϤāĻŦ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ, āĻāĻ•āĻžāϧāĻŋāĻ• āϤ⧁āϞāύāĻž āĻĒāĻĻā§āϧāϤāĻŋ, āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻŦāĻŋāϞ⧋āĻĒāύ āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āĨĒ. āĻĒā§āϰāĻ­āĻžāĻŦ āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ: āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž, āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ•āϤāĻž, āϏāĻ āĻŋāĻ•āϤāĻž āϤāĻŋāύāϟāĻŋ āĻŽāĻžāĻ¤ā§āϰāĻžāϝāĻŧ āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ āωāĻ¨ā§āύāϤāĻŋ āĨĢ. āĻŦā§āϝāĻŦāĻšāĻžāϰāĻŋāĻ• āĻŽā§‚āĻ˛ā§āϝ āωāĻšā§āϚ: āĻŦāĻžāĻ¸ā§āϤāĻŦ āĻĒā§āϰāĻ•ā§ŒāĻļāϞ āϏāĻŽāĻ¸ā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰ⧇, āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ āĻĒā§āϰāϝāĻŧā§‹āϗ⧇āϰ āϏāĻŽā§āĻ­āĻžāĻŦāύāĻž āϰāϝāĻŧ⧇āϛ⧇

āĻ…āĻĒā§‚āĻ°ā§āĻŖāϤāĻž

āĨ§. āĻ¸ā§āϕ⧇āϞ⧇āĻŦāĻŋāϞāĻŋāϟāĻŋ āϏāĻŽāĻ¸ā§āϝāĻž: āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāϪ⧇āϰ āĻ—āĻŖāύāĻžāĻŽā§‚āϞāĻ• āϜāϟāĻŋāϞāϤāĻž āĻ…āϤāĻŋ āĻŦāĻĄāĻŧ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇ āĻĒā§āϰāϝāĻŧā§‹āĻ— āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇ āĨ¨. āύāĻŋāϝāĻŧāĻŽ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖāϤāĻž: Rust āĻŽāĻ¨ā§āϤāĻŦā§āϝ āύāĻŋāĻˇā§āĻ•āĻžāĻļāύ āύāĻŋāϝāĻŧāĻŽ āϏāĻŽāĻ¸ā§āϤ āϏ⧀āĻŽāĻžāĻ¨ā§āϤ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āĻ•āĻ­āĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇ āύāĻž āĨŠ. āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž: āĻĒā§āϰāϧāĻžāύāϤ āĻŽāĻžāĻāĻžāϰāĻŋ-āϛ⧋āϟ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇ āϝāĻžāϚāĻžāχāĻ•ā§ƒāϤ, āĻŦāĻĄāĻŧ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇āϰ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āφāϰāĻ“ āϝāĻžāϚāĻžāχāĻ•āϰāϪ⧇āϰ āĻ…āĻĒ⧇āĻ•ā§āώāĻžāϝāĻŧ āĨĒ. āύāĻŋāĻ°ā§āĻ­āϰāϤāĻž āϗ⧁āĻŖāĻŽāĻžāύ: āĻĒāĻĻā§āϧāϤāĻŋāϰ āĻĒā§āϰāĻ­āĻžāĻŦ āĻŦāĻĄāĻŧ āĻĒāϰāĻŋāĻŽāĻžāϪ⧇ āĻ¸ā§āĻĨāĻŋāϰ āĻŦāĻŋāĻļā§āϞ⧇āώāϪ⧇āϰ āύāĻŋāĻ°ā§āϭ⧁āϞāϤāĻžāϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇

āĻĒā§āϰāĻ­āĻžāĻŦ

āĨ§. āĻāĻ•āĻžāĻĄā§‡āĻŽāĻŋāĻ• āĻ…āĻŦāĻĻāĻžāύ: āϕ⧋āĻĄ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āύāϤ⧁āύ āĻ—āĻŦ⧇āώāĻŖāĻž āĻĒā§āϝāĻžāϰāĻžāĻĄāĻžāχāĻŽ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇, āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻāĻŦāĻ‚ āĻ‰ā§ŽāĻĒāĻžāĻĻāύāĻļā§€āϞ AI āĻāĻ•āĻ¤ā§āϰāĻŋāϤ āĻ•āϰ⧇ āĨ¨. āĻĒā§āϰāĻ•ā§ŒāĻļāϞ āĻŽā§‚āĻ˛ā§āϝ: C āĻĨ⧇āϕ⧇ Rust āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤāϰ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻŋāĻ• āϏāϰāĻžā§āϜāĻžāĻŽ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇, āϏāĻĢāϟāĻ“āϝāĻŧā§āϝāĻžāϰ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āωāĻ¨ā§āύāϤ āĻ•āϰāϤ⧇ āϏāĻšāĻžāϝāĻŧāϤāĻž āĻ•āϰ⧇ āĨŠ. āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋāĻ—āϤ āĻ…āύ⧁āĻĒā§āϰ⧇āϰāĻŖāĻž: āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ-āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻŋāϤ LLM āϚāĻŋāĻ¨ā§āϤāĻžāĻ­āĻžāĻŦāύāĻž āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āϕ⧋āĻĄ āĻ‰ā§ŽāĻĒāĻžāĻĻāύ āĻ•āĻžāĻœā§‡ āĻĒā§āϰāϏāĻžāϰāĻŋāϤ āĻ•āϰāĻž āϝāĻžāϝāĻŧ

āĻĒā§āϰāϝ⧋āĻœā§āϝ āĻĻ⧃āĻļā§āϝāĻ•āĻ˛ā§āĻĒ

āĨ§. āωāĻ¤ā§āϤāϰāĻžāϧāĻŋāĻ•āĻžāϰ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤāϰ: C āϕ⧋āĻĄ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ Rust-āĻ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤāϰ⧇āϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϝ⧁āĻ•ā§āϤ āĨ¨. āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž-āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ: āĻ¸ā§āĻŽā§ƒāϤāĻŋ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻžāϰ āωāĻšā§āϚ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧāϤāĻž āϏāĻš āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āωāĻ¨ā§āύāϝāĻŧāύ āĨŠ. āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ•āϰāĻŖ āϏāϰāĻžā§āϜāĻžāĻŽ: IDE āĻŦāĻž CI/CD āĻĒāĻžāχāĻĒāϞāĻžāχāύ⧇ āĻāϕ⧀āĻ­ā§‚āϤ āĻ•āϰāĻž āϝāĻžāϝāĻŧ āĨĒ. āĻļāĻŋāĻ•ā§āώāĻž āĻĒā§āϰāĻļāĻŋāĻ•ā§āώāĻŖ: āĻĄā§‡āϭ⧇āϞāĻĒāĻžāϰāĻĻ⧇āϰ Rust āĻ¸ā§āĻŽā§ƒāϤāĻŋ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āϧāĻžāϰāĻŖāĻž āĻļāĻŋāĻ–āϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰ⧇

āϏāĻ‚āĻĻāĻ°ā§āĻ­

āĻĒāĻ¤ā§āϰāϟāĻŋ āϕ⧋āĻĄ āĻ…āύ⧁āĻŦāĻžāĻĻ, āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ, āĻŦ⧃āĻšā§Ž āĻ­āĻžāώāĻž āĻŽāĻĄā§‡āϞ āχāĻ¤ā§āϝāĻžāĻĻāĻŋ āĻāĻ•āĻžāϧāĻŋāĻ• āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇āϰ āϗ⧁āϰ⧁āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻžāϜ āĻ•āĻ­āĻžāϰ āĻ•āϰ⧇ āĨ­āĨŦāϟāĻŋ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āϏāĻ‚āĻĻāĻ°ā§āĻ­ āωāĻĻā§āϧ⧃āϤ āĻ•āϰ⧇, āĻ—āĻŦ⧇āώāĻŖāĻžāϰ āϜāĻ¨ā§āϝ āĻĻ⧃āĻĸāĻŧ āϤāĻžāĻ¤ā§āĻ¤ā§āĻŦāĻŋāĻ• āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤


āϏāĻžāĻŽāĻ—ā§āϰāĻŋāĻ• āĻŽā§‚āĻ˛ā§āϝāĻžāϝāĻŧāύ: āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āωāĻšā§āϚ-āĻŽāĻžāύ⧇āϰ āϏāĻĢāϟāĻ“āϝāĻŧā§āϝāĻžāϰ āĻĒā§āϰāĻ•ā§ŒāĻļāϞ āĻ—āĻŦ⧇āώāĻŖāĻž āĻĒāĻ¤ā§āϰ, āϝāĻž āϏ⧃āϜāύāĻļā§€āϞāĻ­āĻžāĻŦ⧇ āĻœā§āĻžāĻžāύ āĻ—ā§āϰāĻžāĻĢ āĻāĻŦāĻ‚ āĻŦ⧃āĻšā§Ž āĻ­āĻžāώāĻž āĻŽāĻĄā§‡āϞ āĻāĻ•āĻ¤ā§āϰāĻŋāϤ āĻ•āϰ⧇ C āĻĨ⧇āϕ⧇ Rust āĻ…āύ⧁āĻŦāĻžāĻĻ⧇ āĻŽā§‚āϞ āϏāĻŽāĻ¸ā§āϝāĻž āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰ⧇āĨ¤ āĻĒāĻĻā§āϧāϤāĻŋ āĻĄāĻŋāϜāĻžāχāύ āϝ⧁āĻ•ā§āϤāĻŋāϏāĻ™ā§āĻ—āϤ, āĻĒāϰ⧀āĻ•ā§āώāĻž-āύāĻŋāϰ⧀āĻ•ā§āώāĻž āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻŦā§āϝāĻžāĻĒāĻ•, āĻĢāϞāĻžāĻĢāϞ āĻĒā§āϰāĻ­āĻžāĻŦāĻļāĻžāϞ⧀āĨ¤ āϝāĻĻāĻŋāĻ“ āĻ•āĻŋāϛ⧁ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧāϤāĻž āϰāϝāĻŧ⧇āϛ⧇, āϤāĻŦ⧇ āĻāϟāĻŋ āϕ⧋āĻĄ āĻ…āύ⧁āĻŦāĻžāĻĻ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇ āύāϤ⧁āύ āĻ—āĻŦ⧇āώāĻŖāĻž āĻĻāĻŋāĻ•āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž āωāĻ¨ā§āĻŽā§‹āϚāύ āĻ•āϰ⧇, āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ āĻāĻ•āĻžāĻĄā§‡āĻŽāĻŋāĻ• āĻŽā§‚āĻ˛ā§āϝ āĻāĻŦāĻ‚ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻŋāĻ• āϤāĻžā§ŽāĻĒāĻ°ā§āϝ āϰāϝāĻŧ⧇āϛ⧇āĨ¤