> For the complete documentation index, see [llms.txt](https://notes.iveselov.info/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://notes.iveselov.info/programming.md).

# Programming

- [Cheatsheet: Option (in Rust) vs Maybe (in Haskell)](https://notes.iveselov.info/programming/cheatsheet-rust-option-vs-haskell-maybe.md): Correspondence of common combinators
- [printf() and floating point numbers](https://notes.iveselov.info/programming/printf-and-floating-point-numbers.md): Help! My printf is producing digits out of thin air!
- [More advanced aspects of pattern matching in Rust](https://notes.iveselov.info/programming/refs-and-pattern-matching-in-rust.md): \`ref\` keyword, match ergonomics, box patterns, references patterns and other interesting stuff
- [time\_it: a Case Study in Rust Macros](https://notes.iveselov.info/programming/time_it-a-case-study-in-rust-macros.md): My adventures in Declarative Macros Land
- [Rust Closures: Returning \`impl Fn\` for \`move\` closures](https://notes.iveselov.info/programming/rust-closures-combining-move-and-fn.md)
- [Allocation API, allocators and virtual memory](https://notes.iveselov.info/programming/allocation-api-and-allocators.md): Exploring allocators in general and their Rust API in particular.
- [Checking status of Rust features](https://notes.iveselov.info/programming/checking-status-of-rust-features.md): RFC process, features lifecycle and the Algorithm
