├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── lesson-1 ├── Cargo.toml └── src │ ├── lib.rs │ ├── s01_define_the_ir.rs │ ├── s02_create_a_plan.rs │ ├── s03_heuristics.rs │ ├── s04_memo.rs │ ├── s05_apply_rule_again.rs │ └── s06_new_repr.rs └── src ├── ir2.rs ├── ir2 └── rel_node.rs ├── ir3.rs ├── ir3 └── rel_node.rs └── lib.rs /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [workspace] 2 | members = ["lesson-1"] 3 | resolver = "2" 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/README.md -------------------------------------------------------------------------------- /lesson-1/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/Cargo.toml -------------------------------------------------------------------------------- /lesson-1/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/lib.rs -------------------------------------------------------------------------------- /lesson-1/src/s01_define_the_ir.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/s01_define_the_ir.rs -------------------------------------------------------------------------------- /lesson-1/src/s02_create_a_plan.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/s02_create_a_plan.rs -------------------------------------------------------------------------------- /lesson-1/src/s03_heuristics.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/s03_heuristics.rs -------------------------------------------------------------------------------- /lesson-1/src/s04_memo.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/s04_memo.rs -------------------------------------------------------------------------------- /lesson-1/src/s05_apply_rule_again.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/s05_apply_rule_again.rs -------------------------------------------------------------------------------- /lesson-1/src/s06_new_repr.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/lesson-1/src/s06_new_repr.rs -------------------------------------------------------------------------------- /src/ir2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/src/ir2.rs -------------------------------------------------------------------------------- /src/ir2/rel_node.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/src/ir2/rel_node.rs -------------------------------------------------------------------------------- /src/ir3.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/src/ir3.rs -------------------------------------------------------------------------------- /src/ir3/rel_node.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/src/ir3/rel_node.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/skyzh/optimizer-lessons/HEAD/src/lib.rs --------------------------------------------------------------------------------