Small IR docs, and then some learning about rustdoc.

This commit is contained in:
2023-04-23 21:02:15 -07:00
parent e79788bcd1
commit 7596472c65
6 changed files with 56 additions and 21 deletions

View File

@@ -1,3 +1,17 @@
//! The middle of the compiler: analysis, simplification, optimization.
//!
//! For the moment, this module doesn't do much besides define an intermediate
//! representation for NGR programs that is a little easier to work with then
//! the structures we've built from the actual user syntax. For example, in the
//! IR syntax, function calls are simplified so that all their arguments are
//! either variables or constants, which can make reasoning about programs
//! (and implicit temporary variables) quite a bit easier.
//!
//! For the foreseeable future, this module will likely remain mostly empty
//! besides definitions, as we'll likely want to focus on just processing /
//! validating syntax, and then figuring out how to turn it into Cranelift
//! and object code. After that point, however, this will be the module to
//! come to for analysis and optimization work.
mod ast;
mod eval;
mod from_syntax;