gitextract_94czkswh/ ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ └── feature_request.md │ └── workflows/ │ └── rust.yml ├── .gitignore ├── .rustfmt.toml ├── .travis.yml ├── 01_arith/ │ ├── Cargo.toml │ └── src/ │ ├── lexer.rs │ ├── main.rs │ └── parser.rs ├── 02_lambda/ │ ├── Cargo.toml │ └── src/ │ ├── context.rs │ ├── lexer.rs │ ├── main.rs │ └── parser.rs ├── 03_typedarith/ │ ├── Cargo.toml │ └── src/ │ ├── ast.rs │ ├── lexer.rs │ ├── main.rs │ └── parser.rs ├── 04_stlc/ │ ├── .gitignore │ ├── Cargo.toml │ └── src/ │ ├── eval.rs │ ├── lexer.rs │ ├── main.rs │ ├── parser.rs │ ├── term.rs │ ├── typing.rs │ └── visitor.rs ├── 05_recon/ │ ├── Cargo.toml │ └── src/ │ ├── disjoint.rs │ ├── main.rs │ ├── mutation/ │ │ ├── mod.rs │ │ └── write_once.rs │ ├── naive.rs │ ├── parser.rs │ └── types.rs ├── 06_system_f/ │ ├── Cargo.toml │ ├── README.md │ ├── src/ │ │ ├── diagnostics.rs │ │ ├── eval.rs │ │ ├── macros.rs │ │ ├── main.rs │ │ ├── patterns/ │ │ │ └── mod.rs │ │ ├── syntax/ │ │ │ ├── lexer.rs │ │ │ ├── mod.rs │ │ │ └── parser.rs │ │ ├── terms/ │ │ │ ├── mod.rs │ │ │ └── visit.rs │ │ ├── types/ │ │ │ ├── mod.rs │ │ │ ├── patterns.rs │ │ │ └── visit.rs │ │ └── visit.rs │ └── test.sf ├── 07_system_fw/ │ ├── Cargo.toml │ ├── README.md │ ├── src/ │ │ ├── diagnostics.rs │ │ ├── elaborate.rs │ │ ├── functor.rs │ │ ├── hir/ │ │ │ ├── bidir.rs │ │ │ └── mod.rs │ │ ├── macros.rs │ │ ├── main.rs │ │ ├── stack.rs │ │ ├── syntax/ │ │ │ ├── ast.rs │ │ │ ├── lexer.rs │ │ │ ├── mod.rs │ │ │ ├── parser/ │ │ │ │ ├── README.md │ │ │ │ ├── decls.rs │ │ │ │ ├── exprs.rs │ │ │ │ ├── infix.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── patterns.rs │ │ │ │ └── types.rs │ │ │ ├── tokens.rs │ │ │ └── visit/ │ │ │ ├── mod.rs │ │ │ └── types.rs │ │ ├── terms.rs │ │ ├── typecheck.rs │ │ └── types.rs │ └── test.fw ├── Cargo.toml ├── LICENSE ├── README.md ├── util/ │ ├── .gitignore │ ├── Cargo.toml │ └── src/ │ ├── arena.rs │ ├── diagnostic.rs │ ├── lib.rs │ ├── span.rs │ └── unsafe_arena.rs ├── x1_bidir/ │ ├── Cargo.toml │ └── src/ │ ├── helpers.rs │ └── main.rs └── x2_dependent/ ├── Cargo.toml └── src/ └── main.rs