A complete Rust toolchain for VB6 projects — parsing, semantic analysis, cross-compilation, interpretation, and formatting.
| Crate | Status | Description |
|---|---|---|
| vb6parse | Active | VB6 source code parser |
| vb6core | Active | VB6 core type system |
| vb6runtime | Active | VB6 standard library and runtime |
| vb6semantic | Active | Semantic analysis and type checking |
| vb6interpret | Active | VB6 interpreter and REPL |
| vb6format | Active | VB6 source code formatter |
| vb6harness | Active | Test harness and golden-file comparisons |
| vb6grammarfuzz | Active | Grammar fuzzing tool |
| aspen | Active | Workspace-level analyzer and formatter |
| vb6compile | Planning | Compiler pipeline (not yet implemented) |
| vb6codegen | Planning | Code generation backends (not yet implemented) |
| vb6libraries | Planning | Library detection and mapping (not yet implemented) |
| vb6convert | Planning | Cross-language conversion tools (not yet implemented) |
| vb6lsp | Frozen | Language server (stub only) |
| vscode-vb6 | Frozen | VS Code extension (stub only) |
# Build the workspace
cargo build --workspace
# Run tests
cargo test --workspace
# Run the interpreter
cargo run -p vb6interpret -- run example.basThe workspace is organized into layers:
- Foundation — vb6core (types), vb6parse (parsing)
- Runtime — vb6runtime (standard library, I/O)
- Analysis — vb6semantic (symbol tables, type checking), aspen (workspace analysis)
- Execution — vb6interpret (interpreted execution)
- Codegen — vb6compile, vb6codegen (future: compiled output)
- Tooling — vb6harness (testing), vb6format (formatting), vb6grammarfuzz (fuzzing)
Each crate has its own documentation. See projects/<crate>/README.md for per-project guides.