Skip to content

Conversation

@mariusarvinte
Copy link
Contributor

🎉 Major Updates

  • ideas.init module for robust C project discovery (including linked libraries) and idiomatic use of cargo workspace for the translated Rust project. C artifacts are now translated to self-contained Rust crates in the same workspace.
  • ideas.translate_recurrent module for symbol-by-symbol C-to-Rust translation using LLMs. The module is powerful enough to work across multi-artifact C projects and topologically sort symbols, assuming no name collisions or circular references exist.
  • ideas.wrapper module for LLM-based C FFI wrapper generation for Rust functions. The module uses dspy.ChainOfThought with custom feedback and bindgen signatures derived from the original C function to improve C ABI compatibility of the translated Rust functions.

🎈 Minor Updates

  • Expanded Rust AST parsing functionality and added an ensure_no_mangle flag to ideas.cover to deterministically guarantee that translated functions get exported with the correct #[unsafe(no_mangle)] attribute.

# 🎉 Major Updates
- `ideas.init` module for robust C project discovery (including linked
libraries) and idiomatic use of [`cargo
workspace`](https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html)
for the translated Rust project. C artifacts are now translated to
self-contained Rust crates in the same workspace.
- `ideas.translate_recurrent` module for symbol-by-symbol C-to-Rust
translation using LLMs. The module is powerful enough to work across
multi-artifact C projects and topologically sort symbols, assuming no
name collisions or circular references exist.
- `ideas.wrapper` module for LLM-based C FFI wrapper generation for Rust
functions. The module uses `dspy.ChainOfThought` with custom feedback
and `bindgen` signatures derived from the original C function to improve
C ABI compatibility of the translated Rust functions.

# 🎈 Minor Updates
- Expanded Rust AST parsing functionality and added an
`ensure_no_mangle` flag to `ideas.cover` to deterministically guarantee
that translated functions get exported with the correct
`#[unsafe(no_mangle)]` attribute.

---------

Co-authored-by: Cory Cornelius <cory.cornelius@intel.com>
Co-authored-by: Weilin Xu <weilin.xu@intel.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@mariusarvinte mariusarvinte merged commit a84ba74 into main Nov 24, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant