* Parser First of all you need to read [[https://tomassetti.me/guide-parsing-algorithms-terminology/][All you need to know about Parser algorithms]]. Then here is the list or parsers that we have considered - Rust parser combinator framework :: https://github.com/Geal/nom/ - LR(1) parser generator for Rust :: https://github.com/lalrpop/lalrpop - A parser combinator library for Rust :: https://github.com/Marwes/combine - Parsing Expression Grammar (PEG) parser generator for Rust :: https://github.com/kevinmehall/rust-peg - General purpose parser :: https://pest.rs/ * Considerations ** Hashmaps *** DOS attack - https://www.anchor.com.au/blog/2012/12/how-to-explain-hash-dos-to-your-parents-by-using-cats/ - https://en.wikipedia.org/wiki/Collision_attack * Resources ** Rust - The Rust book :: https://doc.rust-lang.org/book/ https://www.reddit.com/r/rust/comments/2s1zj2/the_rust_programming_language_book_as_epub/ ** LLVM - Brief overview of LLVM :: https://www.infoworld.com/article/3247799/what-is-llvm-the-power-behind-swift-rust-clang-and-more.html - A bit in depth details on LLVM :: https://aosabook.org/en/llvm.html - Rust binding :: https://crates.io/crates/llvm-sys - Official LLVM tutorial C++ :: https://llvm.org/docs/tutorial/ - Rust LLVM tutorial :: https://github.com/jauhien/iron-kaleidoscope ** Data structures - Pure functional datastructures papaer :: https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf ** Cranelift - Source tree :: https://github.com/bytecodealliance/wasmtime/tree/master/cranelift