Update typed-jerboa doc for per-module file layout
ober
1fca5aad49e28f1227a187b90efeec2af8ffbc47
--- a/docs/typed-jerboa.md +++ b/docs/typed-jerboa.md @@ -300,8 +300,12 @@ Highest-value next steps: emitter (`typed-modules->rust-crate-string` / `typed-library-forms->rust-crate-string`) now uses the same multi-module elaboration, so cross-module record/variant/def references compile into a - single Rust crate. The emitter still inlines all modules into one file and - does not yet emit cross-module `use` declarations. + single Rust crate. `typed-modules->rust-crate-files` now writes one + `src/<module>.rs` per typed module plus a thin `src/lib.rs` that + `pub mod`s and `pub use`s each module so cross-module bare-name calls + still resolve via the crate root. Explicit per-module `use` declarations + driven by the typed `import` graph (instead of `use crate::*;`) remain + future work. 3. Improve boundary semantics for Option/Result (Done). `(Option <Scalar>)` for Scalar in `{Bool, Char, Int, Nat, Fixnum, Float}` crosses the FFI boundary as a tagged Scheme value (`#f` or `(cons 'some V)`): the Rust ABI