Browse By Topic
15 topics · 1123 examples — select a topic to filter.
Iterators
106 examples031Intermediate
031 — Collect the Leaves of a Binary Tree in a List
Functional Programming
056Intermediate
fold_right — Structural Recursion
Higher-Order Functions
057Intermediate
fold_left — Tail-Recursive Accumulator
Higher-Order Functions
067Intermediate
067 — Lazy Sequences (Seq Module)
Functional Programming
069Advanced
069 — Unfold — Generate a Sequence from a Seed
Functional Programming
070Intermediate
070 — Scan Left (Running Accumulation)
Functional Programming
085Intermediate
085 — Iterator Trait
Functional Programming
086Intermediate
086 — Custom Iterator with State
Functional Programming
087Intermediate
087 — Iterator Adapters
Functional Programming
088Intermediate
088 — Iterator Consumers
Functional Programming
089Intermediate
089 — Lazy Sequences
Functional Programming
090Intermediate
090 — Infinite Iterators
Functional Programming
091Intermediate
091 — Zip and Unzip
Functional Programming
092Intermediate
092 — Scan Accumulate
Functional Programming
094Intermediate
094 — Peekable Iterator
Functional Programming
095Intermediate
095 — Double-Ended Iterator
Functional Programming
096Intermediate
096 — Exact Size Iterator
Functional Programming
097Intermediate
097 — Flatten and Flat Map
Functional Programming
098Intermediate
098 — Partition Iterator
Functional Programming
099Intermediate
099 — Group Consecutive Equal Elements
Functional Programming
100Intermediate
100 — Step By
Functional Programming
1002Intermediate
1002 — List Fold Left
Functional Programming
101Intermediate
Lazy Sequences
Lazy/Infinite Sequences
1019Intermediate
1019-fallible-iterator — Fallible Iterator
Functional Programming
1020Intermediate
1020-try-fold — try_fold
Functional Programming
103Advanced
103-unfold — Unfold: Generating Sequences from Seeds
Functional Programming
104Intermediate
104-scan-left — Scan Left (Running Accumulation)
Functional Programming
214Advanced
Fold Optic — Read-Only Multi-Focus Aggregation
Functional Programming
255Intermediate
Lazy Fibonacci
Lazy / Infinite Sequences
256Intermediate
256: Chaining Iterators with chain()
Functional Programming
257Intermediate
257: Pairing Elements with zip()
Functional Programming
258Intermediate
258: Index-Value Pairs with enumerate()
Functional Programming
259Intermediate
259: Flattening with flat_map()
Functional Programming
260Intermediate
260: Stateful Accumulation with scan()
Functional Programming
261Intermediate
261: Lookahead with Peekable
Functional Programming
262Intermediate
262: Sliding Windows over Slices
Functional Programming
263Intermediate
263: Fixed-Size Chunks Iteration
Functional Programming
264Intermediate
264: Conditional Stopping with take_while()
Functional Programming
265Intermediate
265: Conditional Skipping with skip_while()
Functional Programming
266Intermediate
266: Striding with step_by()
Functional Programming
267Intermediate
267: Infinite Cycling with cycle()
Functional Programming
268Intermediate
268: Splitting Pairs with unzip()
Functional Programming
269Intermediate
269: Splitting by Predicate with partition()
Functional Programming
270Intermediate
270: Finding Index with position()
Functional Programming
271Intermediate
271: Transform-and-Find with find_map()
Functional Programming
272Intermediate
272: One-Level Flattening with flatten()
Functional Programming
273Intermediate
273: Debugging Iterators with inspect()
Functional Programming
274Intermediate
274: Numeric Reductions: sum() and product()
Functional Programming
275Intermediate
275: Finding Extremes with min() and max()
Functional Programming
276Intermediate
276: Custom Comparison with min_by() and max_by()
Functional Programming
277Intermediate
277: Counting Elements with count()
Functional Programming
278Intermediate
278: Getting the Last Element with last()
Functional Programming
279Intermediate
279: Random Access with nth()
Functional Programming
280Intermediate
280: Existential Checks with any() and all()
Functional Programming
281Intermediate
281: Implementing the Iterator Trait from Scratch
Functional Programming
282Intermediate
282: DoubleEndedIterator and rev()
Functional Programming
283Intermediate
283: ExactSizeIterator for Known-Length Iterators
Functional Programming
284Intermediate
284: FusedIterator for Stable Termination
Functional Programming
285Intermediate
285: Building Custom Iterator Adapters
Functional Programming
286Intermediate
286: Creating Iterators with from_fn()
Functional Programming
287Intermediate
287: Recursive Sequences with successors()
Functional Programming
288Intermediate
288: Materializing Iterators with collect()
Functional Programming
289Intermediate
289: Extending Collections with extend()
Functional Programming
290Intermediate
290: Advanced Splitting Patterns
Functional Programming
303Intermediate
303: Collecting Iterator<Result<T>> into Result<Vec<T>>
Functional Programming
320Intermediate
320: Fallible Iterators
Functional Programming
405Intermediate
405: Iterator Trait Deep Dive
Functional Programming
857Fundamental
FlatMap / Bind Chains
Functional Programming
879Intermediate
879-iterator-trait — Iterator Trait
Functional Programming
880Intermediate
880-custom-iterator — Custom Iterator
Functional Programming
881Intermediate
881-iterator-adapters — Iterator Adapters
Functional Programming
882Intermediate
882-iterator-consumers — Iterator Consumers
Functional Programming
883Intermediate
883-lazy-sequences — Lazy Sequences
Functional Programming
884Intermediate
884-infinite-iterators — Infinite Iterators
Functional Programming
885Intermediate
885-zip-unzip — Zip and Unzip
Functional Programming
886Intermediate
886-scan-accumulate — Scan / Accumulate
Functional Programming
888Intermediate
888-peekable-iterator — Peekable Iterator
Functional Programming
889Intermediate
889-double-ended — DoubleEndedIterator
Functional Programming
890Intermediate
890-exact-size — ExactSizeIterator
Functional Programming
891Intermediate
891-flatten-iterator — Flatten Iterator
Functional Programming
892Intermediate
892-partition-iterator — Partition Iterator
Functional Programming
893Intermediate
893-group-by-iter — Group By Iterator
Functional Programming
894Intermediate
894-step-by — Step By, Enumerate, Rev
Functional Programming
900Intermediate
900-iterator-chain — Iterator Chain
Functional Programming
901Intermediate
901-iterator-zip — Iterator Zip
Functional Programming
902Intermediate
902-iterator-enumerate — Iterator Enumerate
Functional Programming
903Intermediate
903-iterator-flat-map — Iterator flat_map
Functional Programming
904Intermediate
904-iterator-scan — Iterator Scan
Functional Programming
905Intermediate
905-iterator-peekable — Iterator Peekable
Functional Programming
906Intermediate
906-iterator-windows — Iterator Windows
Functional Programming
907Intermediate
907-iterator-chunks — Iterator Chunks
Functional Programming
908Intermediate
908-iterator-take-while — Iterator take_while
Functional Programming
909Intermediate
909-iterator-skip-while — Iterator skip_while
Functional Programming
910Intermediate
910-iterator-find-map — Iterator find_map
Functional Programming
911Intermediate
911-iterator-flatten — Iterator Flatten
Functional Programming
912Intermediate
912-iterator-inspect — Iterator Inspect
Functional Programming
913Intermediate
913-iterator-sum-product — Iterator Sum and Product
Functional Programming
914Intermediate
914-iterator-min-max — Iterator min and max
Functional Programming
915Intermediate
915-iterator-min-by-max-by — Custom Comparison min_by / max_by
Functional Programming
916Intermediate
916-iterator-count — Iterator Count
Functional Programming
917Intermediate
917-iterator-last — Iterator Last
Functional Programming
918Intermediate
918-iterator-nth — Iterator nth
Functional Programming
919Intermediate
919-iterator-any-all — Iterator any and all
Functional Programming
938Advanced
938-unfold — Unfold
Functional Programming
939Intermediate
939 Scan Left
Functional Programming
951Intermediate
951 Series Sliding Window
Functional Programming
Pattern Matching
41 examples003Intermediate
003 — Pattern Matching
Functional Programming
058Fundamental
Variants — Days of the Week
Algebraic Data Types
1078Advanced
Visitor Pattern via Fold — Expression Evaluator
Monadic Patterns / Higher-Order Functions
1098Advanced
Monoid Pattern — Generic Combining
Type ClassesAlgebraic Abstractions
1103Intermediate
Monoid Pattern — Trait-Based Combining
Functional Programming
114Intermediate
114-slice-patterns — Slice Patterns
Functional Programming
232Intermediate
Sum Types
Functional Programming
561Fundamental
Or Patterns
Functional Programming
562Fundamental
Pattern Guards
Functional Programming
563Fundamental
Struct Destructuring
Functional Programming
564Fundamental
Enum Variant Patterns
Functional Programming
565Fundamental
Tuple Struct Patterns
Functional Programming
566Fundamental
Nested Patterns
Functional Programming
567Fundamental
Pattern Binding Modes
Functional Programming
568Fundamental
@ Bindings
Functional Programming
569Intermediate
Range Patterns
Functional Programming
570Fundamental
Slice Patterns
Functional Programming
571Fundamental
.. and _ Wildcards
Functional Programming
572Fundamental
Ref Patterns
Functional Programming
573Fundamental
let-else Pattern
Functional Programming
574Fundamental
if-let and while-let
Functional Programming
575Fundamental
Let Chains (&&)
Functional Programming
576Fundamental
matches! Macro
Functional Programming
577Fundamental
Irrefutable vs Refutable Patterns
Functional Programming
578Fundamental
Pattern Exhaustiveness
Functional Programming
579Fundamental
String Pattern Matching
Functional Programming
580Fundamental
Option Pattern Matching
Functional Programming
581Intermediate
Result Pattern Matching
Functional Programming
582Fundamental
Tuple Pattern Matching
Functional Programming
583Fundamental
Pattern Const Patterns
Functional Programming
584Fundamental
Pattern Type Ascription
Functional Programming
585Fundamental
Pattern Box Deref
Functional Programming
586Fundamental
Pattern Multiple Arms
Functional Programming
587Fundamental
Pattern Visitor Match
Functional Programming
588Fundamental
Pattern State Automata
Functional Programming
589Fundamental
Pattern Command Dispatch
Functional Programming
590Fundamental
Pattern Advanced Enums
Functional Programming
591Advanced
Functional Builder Pattern
Functional Programming
592Fundamental
Command Pattern (Functional Style)
Functional Programming
814Intermediate
814-kmp-pattern-matching — KMP Pattern Matching
Functional Programming
926Intermediate
926-pattern-matching — Pattern Matching
Functional Programming
Closures & Higher-Order Functions
48 examples001Intermediate
Applying a Function Twice
Higher-Order FunctionsFunctional CompositionCurrying
001Intermediate
001 — Higher-Order Functions
Functional Programming
002Intermediate
Function Composition
Higher-Order FunctionsClosuresComposition
003Fundamental
Pipeline Operator
Higher-Order FunctionsFunction Composition
005Intermediate
005 — Currying and Partial Application
Functional Programming
006Intermediate
006 — Function Composition
Functional Programming
051Intermediate
051 — Applying a Function Twice
Functional Programming
074Intermediate
074 — Currying and Partial Application (Applied)
Functional Programming
099Advanced
099 — Continuation-Passing Style (CPS)
Functional Programming
1082Advanced
Tail-Recursive Map with CPS
Higher-Order Functions
1093Fundamental
Currying and Partial Application
FunctionsHigher-Order Programming
1107Intermediate
Currying, Partial Application, and Sections
Higher-Order Functions
1162Fundamental
Hello World — Functions and Greetings
Functional Programming
1163Intermediate
Currying, Partial Application, and Operator Sections
Higher-Order Functions
120Intermediate
Closure Types: Fn, FnMut, FnOnce
Functional Programming
121Intermediate
Closure Capture Modes
Functional Programming
122Intermediate
Higher-Order Functions with Lifetime Constraints
Functional Programming
501Intermediate
Closure Capture Rules
Functional Programming
502Fundamental
Fn, FnMut, FnOnce
Functional Programming
503Intermediate
Closure as Argument
Functional Programming
504Intermediate
Closure as Return
Functional Programming
505Intermediate
Boxing Closures
Functional Programming
506Intermediate
Closure Move Semantics
Functional Programming
507Advanced
Closure Memoization
Functional Programming
508Intermediate
Closure Partial Application
Functional Programming
509Intermediate
Closure Composition
Functional Programming
510Intermediate
Closure Currying
Functional Programming
511Intermediate
Recursive Closures and Y Combinator
Functional Programming
512Intermediate
Closure State Machine
Functional Programming
513Intermediate
Closure Strategy Pattern
Functional Programming
514Intermediate
Closure Observer Pattern
Functional Programming
515Intermediate
Lazy Evaluation with OnceLock
Functional Programming
516Intermediate
Complex Closure Environments
Functional Programming
517Intermediate
Closure-to-Function-Pointer Coercion
Functional Programming
518Intermediate
Function Pointers vs Closures
Functional Programming
519Intermediate
Closure Type Inference
Functional Programming
520Intermediate
Higher-Order Functions
Functional Programming
521Intermediate
Map-Reduce with Closures
Functional Programming
522Intermediate
Predicate Functions Pattern
Functional Programming
523Intermediate
Event Handler Pattern
Functional Programming
524Intermediate
Builder Pattern with Closures
Functional Programming
525Intermediate
Tap Pattern for Side Effects
Functional Programming
526Intermediate
Pipe Operator Simulation
Functional Programming
527Intermediate
FnOnce for Consuming Closures
Functional Programming
528Intermediate
Closures Capturing References
Functional Programming
529Intermediate
Async Closures
Functional Programming
530Intermediate
Closures in Benchmarking
Functional Programming
947Intermediate
947 Currying Partial
Functional Programming
Error Handling
77 examples004Intermediate
004 — Option and Result
Functional Programming
041Intermediate
041 — Option Basics
Functional Programming
042Intermediate
042 — Option Map
Functional Programming
043Intermediate
043 — Option Bind (and_then)
Functional Programming
044Intermediate
044 — Option Filter
Functional Programming
045Intermediate
045 — Result Basics
Functional Programming
046Intermediate
046 — Result Map
Functional Programming
047Intermediate
047 — Result Bind (and_then)
Functional Programming
048Intermediate
048 — Error Propagation with the ? Operator
Functional Programming
049Intermediate
049 — Error Conversion
Functional Programming
050Intermediate
050 — Custom Error Types
Functional Programming
056Expert
056 — Result as a Monad
Functional Programming
060Fundamental
Option Type — Safe List Maximum
Error Handling
072Intermediate
072 — Error Accumulation (Validation Type)
Functional Programming
072Intermediate
072 — Railway-Oriented Programming
Functional Programming
073Intermediate
073 — Validated Types (Parse, Don't Validate)
Functional Programming
1003Intermediate
1003 — Custom Error Types
Functional Programming
1004Intermediate
1004 — Error Conversion
Functional Programming
1005Intermediate
1005 — Error Chaining
Functional Programming
1006Intermediate
1006 — Multiple Error Types
Functional Programming
1007Intermediate
1007-result-combinators — Result Combinators
Functional Programming
1008Intermediate
1008-option-to-result — Option to Result
Functional Programming
1009Intermediate
1009-collecting-results — Collecting Results
Functional Programming
1010Intermediate
1010-partition-results — Partition Results
Functional Programming
1011Intermediate
1011-try-operator — The ? (Try) Operator
Functional Programming
1013Intermediate
1013-panic-vs-result — Panic vs Result
Functional Programming
1014Intermediate
1014-recover-from-panic — Recover from Panic
Functional Programming
1015Intermediate
1015-validation-error — Validation Errors
Functional Programming
1016Intermediate
1016-error-context — Error Context
Functional Programming
1017Intermediate
1017-typed-errors — Typed Error Hierarchies
Functional Programming
1018Intermediate
1018-error-downcast — Error Downcast
Functional Programming
1021Intermediate
1021-error-propagation-depth — Error Propagation Depth
Functional Programming
1022Intermediate
1022-sentinel-vs-result — Sentinel Values vs Result
Functional Programming
1023Intermediate
1023-parse-int-safe — Safe Integer Parsing
Functional Programming
1024Intermediate
1024-file-errors — File Operation Errors
Functional Programming
1025Intermediate
1025-network-errors — Network Error Classification
Functional Programming
1026Intermediate
1026-error-display — Custom Error Display and Source Chain
Functional Programming
1123Intermediate
List.fold_left — Accumulate a Result
Functional Programming
170Advanced
Error Recovery
Functional Programming
258Intermediate
Monadic Option Chaining
Monadic patterns
259Intermediate
Result Monad — Error Chaining
Monadic patterns
291Intermediate
291: Result Combinators
Functional Programming
292Intermediate
292: Option Combinators
Functional Programming
293Intermediate
293: The ? Operator
Functional Programming
294Intermediate
294: Custom Error Types
Functional Programming
295Intermediate
295: Implementing std::error::Error
Functional Programming
296Intermediate
296: From Trait for Error Conversion
Functional Programming
297Intermediate
297: The thiserror Pattern
Functional Programming
298Intermediate
298: The anyhow Pattern — Boxed Errors
Functional Programming
299Intermediate
299: Adding Context to Errors
Functional Programming
300Intermediate
300: Chaining Errors with source()
Functional Programming
301Intermediate
301: Result::transpose() — Flipping Nested Types
Functional Programming
302Intermediate
302: Option::transpose() — Collecting Optional Results
Functional Programming
304Intermediate
304: Splitting Ok/Err with partition()
Functional Programming
305Intermediate
305: unwrap_or, unwrap_or_else, unwrap_or_default
Functional Programming
306Intermediate
306: ok_or and ok_or_else
Functional Programming
307Intermediate
307: Error Propagation in Closures
Functional Programming
308Intermediate
308: When to Panic vs Return Result
Functional Programming
309Advanced
309: The Never Type (!) in Error Handling
Functional Programming
310Intermediate
310: Infallible Conversions
Functional Programming
311Intermediate
311: Handling Multiple Error Types
Functional Programming
312Intermediate
312: Error Downcasting
Functional Programming
313Intermediate
313: The Try Trait — What ? Actually Does
Functional Programming
314Advanced
314: Validated — Accumulating All Errors
Functional Programming
315Intermediate
315: Result ok() and err() Methods
Functional Programming
316Intermediate
316: std::io::Error Patterns
Functional Programming
317Intermediate
317: Parse Error Handling
Functional Programming
318Intermediate
318: Display vs Debug for Errors
Functional Programming
319Intermediate
319: Error Handling in Tests
Functional Programming
715Fundamental
ffi error codes
Functional Programming
741Fundamental
741-parse-dont-validate — Parse Don't Validate
Functional Programming
755Fundamental
755-testing-error-paths — Testing Error Paths
Functional Programming
855Expert
Result Monad
Functional Programming
864Fundamental
Traverse with Result
Functional Programming
927Intermediate
927-option-result — Option and Result
Functional Programming
943Intermediate
943 Result Railway
Functional Programming
944Intermediate
944 Validated Type
Functional Programming
Strings & Parsing
114 examples006Fundamental
006 — Palindrome Check
Functional Programming
010Intermediate
Run-Length Encoding
ListsData Compression
011Intermediate
011 — Modified Run-Length Encoding
Functional Programming
012Intermediate
012 — Decode Run-Length Encoding
Functional Programming
013Intermediate
013 — Direct Run-Length Encoding
Functional Programming
036Intermediate
036 — Represent a Binary Tree as a String
Functional Programming
039Intermediate
039 — Convert a Tree to a Dotstring Representation
Functional Programming
040Intermediate
040 — Parse a Dotstring Back to a Binary Tree
Functional Programming
062Fundamental
062 — Isogram Check
Functional Programming
063Intermediate
063 — Run-Length Encoding
Functional Programming
064Intermediate
064 — Balanced Parentheses
Functional Programming
068Fundamental
068 — Frequency Counter (Map Module)
Functional Programming
070Fundamental
070 — Hamming Distance
Functional Programming
082Fundamental
082 — Nucleotide Count
Functional Programming
083Intermediate
083 — Robot Simulator
Functional Programming
084Fundamental
084 — Phone Number Validation
Functional Programming
086Fundamental
086 — Space Age
Functional Programming
088Intermediate
088 — Allergies
Functional Programming
089Intermediate
089 — Bob
Functional Programming
090Intermediate
Frequency Analysis — Letter Distribution
String Processing
091Fundamental
091 — Caesar Cipher
Functional Programming
092Fundamental
092 — Pangram Check
Functional Programming
093Fundamental
093 — Isogram Check
Functional Programming
094Intermediate
094 — Run-Length Encoding
Functional Programming
095Intermediate
095 — Balanced Parentheses
Functional Programming
096Advanced
096 — Recursive Descent Parser
Functional Programming
102Fundamental
102-frequency-counter — Frequency Counter
Functional Programming
1056Intermediate
1056-edit-distance — Edit Distance (Levenshtein)
Functional Programming
1061Intermediate
1061-word-break — Word Break
Functional Programming
1125Fundamental
1125-reverse-string — Reverse a String
Functional Programming
113Intermediate
113-string-str — String vs &str
Functional Programming
151Advanced
Introduction to Parser Combinators
Functional Programming
152Advanced
Character Parsers
Functional Programming
153Advanced
Satisfy Parser
Functional Programming
154Advanced
String Parser
Functional Programming
155Advanced
Many Parser
Functional Programming
156Advanced
Optional Parser
Functional Programming
157Advanced
Choice Parser
Functional Programming
158Advanced
Sequence Parser
Functional Programming
159Advanced
Map Parser
Functional Programming
160Advanced
FlatMap Parser
Functional Programming
161Advanced
Digit Parser
Functional Programming
162Advanced
Identifier Parser
Functional Programming
163Advanced
Whitespace Parser
Functional Programming
164Advanced
Number Parser
Functional Programming
165Advanced
Keyword Parser
Functional Programming
166Advanced
Separated List
Functional Programming
167Advanced
Recursive Parser
Functional Programming
168Advanced
Expression Parser
Functional Programming
169Advanced
Operator Precedence
Functional Programming
171Intermediate
CSV Parser
Functional Programming
172Advanced
INI File Parser
Functional Programming
173Advanced
Lisp / S-expression Parser
Functional Programming
174Advanced
Arithmetic Expression Evaluator
Functional Programming
175Advanced
Complete JSON Parser
Functional Programming
264Fundamental
String Anagram Check
String Processing
265Fundamental
Caesar Cipher — Functional Encryption
String Processing
274Intermediate
Binary ↔ Decimal Fold
StringsFoldsNumeric ConversionRecursion
280Fundamental
Hamming Distance — Generic Zip
Higher-Order Functions
418Fundamental
418: `stringify!` and `concat!` Macros
Functional Programming
471Fundamental
String vs &str
Functional Programming
472Fundamental
String Slices
Functional Programming
473Fundamental
String Parsing with FromStr
Functional Programming
474Fundamental
String Formatting
Functional Programming
475Fundamental
String Building
Functional Programming
476Fundamental
String Splitting
Functional Programming
477Fundamental
String Trimming
Functional Programming
478Fundamental
String Searching
Functional Programming
479Fundamental
String Replacing
Functional Programming
480Fundamental
String Chars
Functional Programming
481Fundamental
String Bytes
Functional Programming
482Fundamental
String Unicode
Functional Programming
483Fundamental
String Encoding
Functional Programming
484Fundamental
Cow<str> Usage
Functional Programming
485Fundamental
String Concatenation
Functional Programming
486Fundamental
String Regex Pattern
Functional Programming
487Intermediate
String Interning
Functional Programming
488Fundamental
String Owning References
Functional Programming
489Fundamental
Arc<str> for Shared Strings
Functional Programming
490Fundamental
String Fixed Array
Functional Programming
491Fundamental
Path and PathBuf
Functional Programming
492Fundamental
OsStr Handling
Functional Programming
493Fundamental
CString and CStr for FFI
Functional Programming
494Fundamental
String-Number Conversion
Functional Programming
495Fundamental
String Template Pattern
Functional Programming
496Fundamental
String Diff Pattern
Functional Programming
497Fundamental
String Case Conversion
Functional Programming
498Fundamental
String Truncation
Functional Programming
499Fundamental
String Escaping
Functional Programming
500Fundamental
String Compression — Run-Length Encoding
Functional Programming
712Fundamental
ffi string conversion
Functional Programming
730Fundamental
730-small-string-optimization — Small String Optimization
Functional Programming
763Fundamental
763-json-format-from-scratch — JSON Format From Scratch
Functional Programming
764Advanced
764-binary-format-encoding — Binary Format Encoding
Functional Programming
765Intermediate
765-csv-parsing-pattern — CSV Parsing Pattern
Functional Programming
769Fundamental
769-streaming-parser-pattern — Streaming Parser Pattern
Functional Programming
770Advanced
770-recursive-descent-parser — Recursive Descent Parser
Functional Programming
771Fundamental
771-pratt-parser — Pratt Parser
Functional Programming
772Advanced
772-parser-combinator-pattern — Parser Combinator Pattern
Functional Programming
787Intermediate
787-edit-distance-levenshtein — Edit Distance (Levenshtein)
Functional Programming
791Advanced
791-palindrome-partitioning — Palindrome Partitioning
Functional Programming
794Intermediate
794-word-break-dp — Word Break
Functional Programming
820Advanced
Manacher's Algorithm — Longest Palindromic Substring
Functional Programming
823Fundamental
Polynomial String Hashing
Functional Programming
929Fundamental
929-palindrome-check — Palindrome Check
Functional Programming
930Fundamental
930-pangram-check — Pangram Check
Functional Programming
945Fundamental
945 Word Count
Functional Programming
952Fundamental
952 Atbash Cipher
Functional Programming
955Fundamental
955 Json Value
Functional Programming
956Fundamental
956 Json Pretty Print
Functional Programming
957Fundamental
957 Json Query
Functional Programming
958Intermediate
958 Csv Parser
Functional Programming
959Fundamental
959 Csv Writer
Functional Programming
970Fundamental
970 Rope String
Functional Programming
Trees
46 examples029Intermediate
029 — Binary Tree (Algebraic Data Type)
Functional Programming
030Intermediate
030 — Count the Leaves of a Binary Tree
Functional Programming
032Intermediate
032 — Collect the Internal Nodes of a Binary Tree
Functional Programming
033Intermediate
033 — Collect the Nodes at a Given Level
Functional Programming
034Intermediate
034 — Construct a Complete Binary Tree
Functional Programming
035Intermediate
035 — Layout a Binary Tree
Functional Programming
037Intermediate
037 — Preorder Traversal Sequence
Functional Programming
038Intermediate
038 — Inorder Traversal Sequence
Functional Programming
059Intermediate
Recursive Variant — Expression Tree
Algebraic Data Types
061Intermediate
061 — Binary Tree (Size, Membership, Traversal)
Functional Programming
097Advanced
097 — Zipper
Functional Programming
1001Advanced
Binary Tree — Size, Membership, Traversal
Functional Programming
1003Intermediate
Map and Fold on Trees
Functional Programming
1033Advanced
1033-binary-heap-topk — Top-K with BinaryHeap
Functional Programming
1047Intermediate
1047-flat-tree — Flat Binary Tree in Vec
Functional Programming
1048Advanced
1048-zipper-vec — Vec Zipper
Functional Programming
105Intermediate
105-trie — Trie (Prefix Tree)
Functional Programming
1083Advanced
Red-Black Tree
Trees
1088Advanced
Red-Black Tree — Balanced Insert
TreesBalanced Data Structures
1091Advanced
Red-Black Tree — Balanced Insert (Iterator + Free Functions)
TreesBalancing
1094Advanced
Red-Black Tree — Okasaki's Functional Balanced Insert
TreesPersistent Data Structures
1095Advanced
Red-Black Tree with Balanced Insert
TreesBalanced Data Structures
1096Advanced
Red-Black Tree with Okasaki's Functional Balancing
TreesFunctional Data Structures
1143Intermediate
Huffman Encoding — Greedy Tree Building
TreesGreedy AlgorithmsPriority Queues
1165Advanced
1165-building-a-huffman-tree-from-character-frequencies — Huffman Encoding: Greedy Tree Building
Functional Programming
1166Advanced
Trie-based Persistent Vector for O(log n) Random Access
Functional Programming
261Intermediate
Binary Search Tree — Insert and Search
Trees
262Intermediate
Rose Tree — Multi-Way Tree with Fold
Trees
263Advanced
AVL Tree — Self-Balancing BST
Trees
272Advanced
Tree Zipper
TreesFunctional Data StructuresZippers
354Advanced
354: BinaryHeap Priority Queue
Functional Programming
362Intermediate
362: Trie Structure
Functional Programming
366Advanced
366: Segment Tree
Functional Programming
367Advanced
367: Fenwick Tree (Binary Indexed Tree)
Functional Programming
373Advanced
373: Custom B-Tree Implementation
Functional Programming
374Advanced
374: Radix Tree (Compressed Trie)
Functional Programming
821Intermediate
Trie Autocomplete
Functional Programming
838Fundamental
Interval Tree — Stabbing Queries
Functional Programming
867Fundamental
867-foldable-tree — Foldable Tree
Functional Programming
868Fundamental
868-traversable-tree — Traversable Tree
Functional Programming
935Fundamental
935-tree-map-fold — Tree Map and Fold
Functional Programming
962Intermediate
962 Trie Map
Functional Programming
965Advanced
965 Segment Tree
Functional Programming
966Advanced
966 Fenwick Tree
Functional Programming
972Advanced
972 Persistent Tree
Functional Programming
973Advanced
973 Finger Tree
Functional Programming
Graphs & Algorithms
70 examples028Intermediate
028 — Sorting a List of Lists According to Length
Functional Programming
073Advanced
073 — Topological Sort
Functional Programming
075Intermediate
075 — Merge Sort
Functional Programming
078Advanced
078 — Topological Sort (Ownership Focus)
Functional Programming
100Advanced
Dijkstra's Shortest Path
Graph AlgorithmsPriority QueuesFunctional Data Structures
1004Intermediate
1004 — Quicksort
Functional Programming
1037Intermediate
1037-adjacency-list — Adjacency List Graph
Functional Programming
1038Intermediate
1038-adjacency-matrix — Adjacency Matrix Graph
Functional Programming
1068Intermediate
1068-maze-solver — Maze Solver
Functional Programming
1069Intermediate
1069-graph-coloring — Graph Coloring
Functional Programming
1070Advanced
1070-hamiltonian-path — Hamiltonian Path
Functional Programming
1080Advanced
Topological Sort via Kahn's Algorithm
Graphs
1099Advanced
Dijkstra's Shortest Path with Priority Queue
GraphsPriority Queues
1110Advanced
Dijkstra's Shortest Path — Priority Queue
GraphsAlgorithms
1123Intermediate
1123-sorting-algorithmsquicksort — Quicksort
Functional Programming
1147Advanced
Dijkstra's Shortest Path — Functional Priority Queue
GraphsAlgorithms
1164Advanced
Shortest Path Algorithm with Functional Priority Queue
Graphs
1169Advanced
Dijkstra's Shortest Path with a Priority Queue
GraphsAlgorithms
251Intermediate
Quicksort
Sorting algorithms
252Fundamental
Insertion Sort
Sorting Algorithms
253Intermediate
Graph BFS
Graphs
254Intermediate
Graph DFS
Graphs
377Intermediate
377: Graph — Adjacency List
Functional Programming
378Intermediate
378: Graph — Adjacency Matrix
Functional Programming
793Intermediate
793-minimum-path-sum — Minimum Path Sum
Functional Programming
797Intermediate
797-range-minimum-query — Range Minimum Query (Sparse Table)
Functional Programming
798Fundamental
798-kadane-max-subarray — Kadane's Algorithm
Functional Programming
799Advanced
799-bellman-ford — Bellman-Ford Algorithm
Functional Programming
800Fundamental
800-floyd-warshall — Floyd-Warshall Algorithm
Functional Programming
801Fundamental
801-prims-mst — Prim's Minimum Spanning Tree
Functional Programming
802Fundamental
802-kruskals-mst — Kruskal's Minimum Spanning Tree
Functional Programming
803Advanced
803-a-star-pathfinding — A* Pathfinding
Functional Programming
804Fundamental
804-tarjan-scc — Tarjan's Strongly Connected Components
Functional Programming
805Fundamental
805-kosaraju-scc — Kosaraju's Strongly Connected Components
Functional Programming
806Advanced
806-articulation-points — Articulation Points
Functional Programming
807Advanced
807-bipartite-check — Bipartite Check
Functional Programming
808Advanced
808-topological-sort-dfs — Topological Sort (DFS)
Functional Programming
809Fundamental
809-max-flow-ford-fulkerson — Max Flow (Ford-Fulkerson with BFS)
Functional Programming
810Fundamental
810-eulerian-path — Eulerian Path
Functional Programming
811Advanced
811-hamiltonian-backtrack — Hamiltonian Path (Backtracking)
Functional Programming
812Intermediate
812-graph-coloring — Graph Coloring
Functional Programming
813Intermediate
813-minimum-vertex-cover — Minimum Vertex Cover (Trees)
Functional Programming
815Advanced
Boyer-Moore String Search
Functional Programming
816Fundamental
Rabin-Karp Rolling Hash
Functional Programming
817Advanced
Aho-Corasick Multi-Pattern Search
Functional Programming
818Advanced
Suffix Array
Functional Programming
819Fundamental
Z-Algorithm String Matching
Functional Programming
822Fundamental
Burrows-Wheeler Transform
Functional Programming
825Intermediate
Prime Factorization
Functional Programming
827Intermediate
Modular Arithmetic
Functional Programming
828Intermediate
Modular Exponentiation
Functional Programming
829Fundamental
Chinese Remainder Theorem
Functional Programming
830Fundamental
Euler's Totient Function
Functional Programming
831Fundamental
Miller-Rabin Primality Test
Functional Programming
832Fundamental
Extended Euclidean Algorithm
Functional Programming
833Fundamental
Discrete Logarithm — Baby-Step Giant-Step
Functional Programming
834Advanced
Convex Hull — Graham Scan
Functional Programming
835Intermediate
Point-in-Polygon Test
Functional Programming
836Fundamental
Line Segment Intersection
Functional Programming
837Fundamental
Closest Pair of Points — Divide and Conquer
Functional Programming
839Fundamental
Sweep Line Algorithm
Functional Programming
840Fundamental
Divide and Conquer Pattern
Functional Programming
841Advanced
Backtracking Framework
Functional Programming
842Advanced
Branch and Bound
Functional Programming
844Fundamental
Greedy Algorithm Patterns
Functional Programming
845Fundamental
Randomized Quickselect
Functional Programming
846Fundamental
Monte Carlo Pattern
Functional Programming
847Advanced
Approximation Algorithm — Set Cover
Functional Programming
848Advanced
Algorithm Complexity Guide
Functional Programming
948Intermediate
948 Merge Sort
Functional Programming
Data Structures
121 examples001Fundamental
001 — Last Element of a List
Functional Programming
002Fundamental
Last Two Elements
ListsPattern Matching
002Intermediate
002 — List Operations
Functional Programming
003Fundamental
K-th Element
ListsIndexing
004Fundamental
List Length
ListsRecursion
004Intermediate
List Map From Scratch
ListsHigher-Order Functions
005Intermediate
List Filter From Scratch
Higher-Order FunctionsListsPredicates
005Fundamental
005 — Reverse a List
Functional Programming
007Intermediate
Flatten Nested List
Recursive Data StructuresEnums
008Fundamental
Eliminate Consecutive Duplicates
ListsHigher-Order Functions
009Intermediate
Pack Consecutive Duplicates
ListsGrouping
014Intermediate
014 — Duplicate Elements
Functional Programming
015Intermediate
015 — Replicate Elements N Times
Functional Programming
016Intermediate
016 — Drop Every Nth Element
Functional Programming
017Intermediate
017 — Split a List at Position
Functional Programming
018Fundamental
018 — Extract a Slice from a List
Functional Programming
019Intermediate
019 — Rotate a List to the Left
Functional Programming
020Intermediate
020 — Remove the Kth Element
Functional Programming
021Intermediate
021 — Insert an Element at a Given Position
Functional Programming
022Intermediate
022 — Create a List Containing All Integers in a Range
Functional Programming
023Intermediate
023 — Extract a Given Number of Randomly Selected Elements
Functional Programming
024Intermediate
024 — Lotto — Draw N Different Random Numbers from the Set 1..M
Functional Programming
025Fundamental
025 — Leap Year
Functional Programming
025Intermediate
List.map — Transform Every Element
Functional Programming
025Intermediate
025 — Generate a Random Permutation of the Elements of a List
Functional Programming
026Intermediate
026 — Generate the Combinations of K Distinct Objects Chosen from N Elements
Functional Programming
027Intermediate
027 — Group the Elements of a Set into Disjoint Subsets
Functional Programming
063Intermediate
063 — Stack Module
Functional Programming
065Intermediate
065 — Association List
Functional Programming
075Advanced
075 — Difference List
Functional Programming
077Intermediate
077 — Matrix Operations
Functional Programming
081Advanced
081 — Difference List
Functional Programming
085Intermediate
085 — Accumulate (Custom Map)
Functional Programming
093Intermediate
093 — Windows and Chunks
Functional Programming
1000Intermediate
1000 — List Map
Functional Programming
1001Intermediate
1001 — List Filter
Functional Programming
1002Intermediate
Stack Module with Signature
Functional Programming
1003Fundamental
1003 — Leap Year
Functional Programming
1004Fundamental
1004 — Leap Year
Functional Programming
1027Intermediate
1027-btreemap-sorted — BTreeMap: Sorted Key Iteration
Functional Programming
1028Intermediate
1028-btreeset-ops — BTreeSet Operations
Functional Programming
1029Intermediate
1029-hashmap-entry — HashMap Entry API
Functional Programming
1030Intermediate
1030-hashmap-groupby — Group By with HashMap
Functional Programming
1031Intermediate
1031-hashmap-counting — Frequency Counting with HashMap
Functional Programming
1032Intermediate
1032-vec-deque-rotation — VecDeque Rotation
Functional Programming
1034Intermediate
1034-linked-list-safe — Safe Linked List
Functional Programming
1035Advanced
1035-doubly-linked — Doubly-Linked List
Functional Programming
1036Advanced
1036-arena-graph — Graph with Arena Allocation
Functional Programming
1039Intermediate
1039-stack-via-vec — Stack Using Vec
Functional Programming
1040Intermediate
1040-queue-via-deque — Queue Using VecDeque
Functional Programming
1041Intermediate
1041-multimap — Multimap
Functional Programming
1042Advanced
1042-bimap — Bidirectional Map
Functional Programming
1043Intermediate
1043-interval-map — Interval Map
Functional Programming
1044Intermediate
1044-sorted-vec — Sorted Vec with Binary Search
Functional Programming
1045Intermediate
1045-small-vec — Small Vector Optimization
Functional Programming
1049Advanced
1049-persistent-map — Persistent HashMap
Functional Programming
1050Intermediate
1050-interning — String Interning
Functional Programming
1057Advanced
1057-matrix-chain — Matrix Chain Multiplication
Functional Programming
1065Intermediate
1065-combinations-sum — Combination Sum
Functional Programming
1067Intermediate
1067-letter-combinations — Phone Keypad Letter Combinations
Functional Programming
1121Intermediate
1121-listmap-transform-every-element — List.map: Transform Every Element
Functional Programming
1122Fundamental
1122-leap-year — Leap Year
Functional Programming
1124Intermediate
List.sort — Sort with Custom Comparator
Functional Programming
1125Intermediate
List.partition — Split by Predicate
Functional Programming
115Intermediate
115-vec-patterns — Vec Iterator Patterns
Functional Programming
1168Intermediate
Generating All Subsets of a List Recursively
Functional Programming
1172Advanced
Persistent Vector (Functional Array)
Functional Data StructuresTreesPersistent Structures
139Expert
HList — Heterogeneous List
Functional Programming
183Expert
Heterogeneous Vector with Safe Downcast
Functional Programming
271Intermediate
Sublist Classification
ListsHOFPattern Matching
275Intermediate
Yacht Dice Scoring
Pattern MatchingAlgebraic Data Types
277Intermediate
Circular Buffer — Functional Queue
Data Structures
278Intermediate
Sierpinski Triangle — Recursive ASCII Art
Math/Recursion
279Fundamental
Pascal's Triangle — Row Generation
Math/Recursion
351Intermediate
351: BTreeMap Ordered
Functional Programming
352Intermediate
352: BTreeSet Sorted
Functional Programming
353Intermediate
353: VecDeque Double-Ended Queue
Functional Programming
355Intermediate
355: LinkedList in Rust
Functional Programming
356Intermediate
356: HashMap Patterns
Functional Programming
357Intermediate
357: Entry API
Functional Programming
358Intermediate
358: IndexMap Ordered (Insertion-Order Map)
Functional Programming
359Intermediate
359: Multimap Pattern
Functional Programming
360Advanced
360: BitSet Pattern
Functional Programming
361Advanced
361: Rope Data Structure
Functional Programming
363Advanced
363: Arena Allocation
Functional Programming
364Advanced
364: Slab Allocator
Functional Programming
365Intermediate
365: Disjoint Set (Union-Find)
Functional Programming
368Advanced
368: Persistent Data Structures
Functional Programming
370Intermediate
370: SmallVec Pattern
Functional Programming
371Intermediate
371: Circular Buffer (Ring Buffer)
Functional Programming
372Advanced
372: Skip List Pattern
Functional Programming
375Advanced
375: LRU Cache
Functional Programming
376Advanced
376: Bloom Filter
Functional Programming
379Intermediate
379: Directed Acyclic Graph (DAG) and Topological Sort
Functional Programming
380Intermediate
380: Weighted Graph and Dijkstra's Algorithm
Functional Programming
417Fundamental
417: Vec-like Collection Macros
Functional Programming
552Intermediate
Arena Allocation Pattern
Functional Programming
725Intermediate
Stack Allocation Patterns
Functional Programming
775Fundamental
775-const-array-size — Const Array Size
Functional Programming
790Advanced
790-matrix-chain-multiplication — Matrix Chain Multiplication
Functional Programming
887Intermediate
887-windows-chunks — Windows and Chunks
Functional Programming
925Intermediate
925-list-operations — List Operations
Functional Programming
928Fundamental
928-reverse-list — Reverse List
Functional Programming
932Intermediate
932-stack-module — Stack Module with Signature
Functional Programming
942Fundamental
942 Matrix Operations
Functional Programming
950Fundamental
950 Sum Of Multiples
Functional Programming
953Intermediate
953 Poker Hand Evaluator
Functional Programming
954Intermediate
954 Perfect Numbers
Functional Programming
960Fundamental
960 Key Value Store
Functional Programming
961Advanced
961 Lru Cache
Functional Programming
963Advanced
963 Bloom Filter
Functional Programming
964Fundamental
964 Union Find
Functional Programming
967Advanced
967 Priority Queue
Functional Programming
968Intermediate
968 Deque
Functional Programming
969Intermediate
969 Circular Buffer
Functional Programming
971Advanced
971 Persistent List
Functional Programming
974Advanced
974 Skip List
Functional Programming
975Fundamental
975 Sparse Matrix
Functional Programming
976Fundamental
976 Matrix Multiply
Functional Programming
977Advanced
977 Bitset
Functional Programming
978Fundamental
978 Count Min Sketch
Functional Programming
Recursion & Dynamic Programming
56 examples068Intermediate
068 — Tail-Recursive Accumulator
Functional Programming
069Intermediate
069 — Sieve of Eratosthenes
Functional Programming
071Fundamental
071 — Collatz Conjecture
Functional Programming
071Intermediate
071 — GCD and LCM
Functional Programming
076Intermediate
076 — GCD and LCM (Ownership Focus)
Functional Programming
080Expert
080 — Catamorphism
Functional Programming
087Fundamental
087 — Difference of Squares
Functional Programming
098Expert
098 — Church Numerals
Functional Programming
1051Intermediate
1051-fibonacci-memo — Fibonacci with Memoization
Functional Programming
1052Intermediate
1052-fibonacci-dp — Fibonacci Bottom-Up DP
Functional Programming
1053Intermediate
1053-coin-change — Coin Change
Functional Programming
1054Advanced
1054-knapsack-01 — 0/1 Knapsack
Functional Programming
1055Intermediate
1055-longest-common-subseq — Longest Common Subsequence
Functional Programming
1058Intermediate
1058-longest-increasing-subseq — Longest Increasing Subsequence
Functional Programming
1059Advanced
1059-rod-cutting — Rod Cutting
Functional Programming
1060Advanced
1060-partition-equal-subset — Partition Equal Subset Sum
Functional Programming
1062Advanced
1062-n-queens — N-Queens
Functional Programming
1063Advanced
1063-sudoku-solver — Sudoku Solver
Functional Programming
1064Intermediate
1064-permutations — Generate All Permutations
Functional Programming
1066Advanced
1066-subsets-power-set — Subsets / Power Set
Functional Programming
1071Advanced
1071-regex-matching — Regex Matching with . and *
Functional Programming
1072Advanced
1072-wildcard-matching — Wildcard Matching
Functional Programming
1073Advanced
1073-burst-balloons — Burst Balloons
Functional Programming
1074Advanced
1074-egg-drop — Egg Drop
Functional Programming
1075Advanced
1075-stone-game — Stone Game (Minimax DP)
Functional Programming
1076Expert
Y Combinator — Anonymous Recursion
Higher-Order Functions
1113Advanced
0/1 Knapsack with Dynamic Programming (Functional Style)
Functional Programming
1167Advanced
0/1 Knapsack Solved with Memoized Recursion
Functional Programming
117Advanced
Recursive Types
Functional Programming
1173Advanced
Knapsack Problem — Dynamic Programming (Functional)
Dynamic ProgrammingFunctional Algorithms
197Advanced
Trampoline
Functional Programming
198Expert
Church Encoding
Functional Programming
215Advanced
Recursion Schemes — Separating What From How
Recursion Schemes
216Expert
Fix Point — How Recursive Types Work Under the Hood
Functional Programming
217Expert
Catamorphism — The Universal Fold
Functional Programming
256Intermediate
Memoization — Fibonacci with Hashtable Cache
MemoizationHigher-Order Functions
273Intermediate
Fibonacci Variants
RecursionIterationAccumulatorsFold
595Advanced
Trampoline Pattern
Functional Programming
596Expert
Church encoding rust
Functional Programming
608Expert
Catamorphism
Functional Programming
784Intermediate
784-fibonacci-memo-tab — Fibonacci: Memoization vs Tabulation
Functional Programming
785Advanced
785-knapsack-01 — 0/1 Knapsack Problem
Functional Programming
786Intermediate
786-longest-common-subsequence — Longest Common Subsequence
Functional Programming
788Intermediate
788-coin-change-dp — Coin Change
Functional Programming
789Intermediate
789-longest-increasing-subsequence — Longest Increasing Subsequence
Functional Programming
792Advanced
792-rod-cutting-dp — Rod Cutting Problem
Functional Programming
795Advanced
795-subset-sum-dp — Subset Sum
Functional Programming
796Fundamental
796-counting-paths-dp — Counting Paths
Functional Programming
824Intermediate
Sieve of Eratosthenes
Functional Programming
826Intermediate
GCD and LCM — Euclidean Algorithm
Functional Programming
843Advanced
Generic Memoization
Functional Programming
934Expert
934-church-numerals — Church Numerals
Functional Programming
936Fundamental
936-mutual-recursion — Mutual Recursion
Functional Programming
937Intermediate
937-tail-recursive-accumulator — Tail-Recursive Accumulator
Functional Programming
940Intermediate
940 Gcd Lcm
Functional Programming
946Expert
946 Catamorphism
Functional Programming
Traits & Type System
110 examples062Intermediate
062 — Records (Structs)
Functional Programming
066Advanced
066 — Phantom Types (Type-Safe Units)
Functional Programming
076Intermediate
076 — Trait Objects (Dynamic Dispatch)
Functional Programming
078Intermediate
078 — Where Clauses
Functional Programming
079Intermediate
079 — Associated Types
Functional Programming
079Expert
079 — Lambda Calculus Interpreter
Functional Programming
081Intermediate
081 — Newtype Pattern
Functional Programming
082Intermediate
082 — Type Aliases
Functional Programming
083Intermediate
083 — Display Trait
Functional Programming
084Intermediate
084 — From and Into Traits
Functional Programming
100Advanced
100 — Phantom Types
Functional Programming
1012Advanced
1012-never-type — The Never Type (!)
Functional Programming
102Intermediate
102-clone-copy — Clone vs Copy
Functional Programming
1077Expert
Phantom Type State Machine — File Handle
Type System / Phantom Types
118Intermediate
Deref Coercions
Functional Programming
119Advanced
Zero-Cost Abstractions
Functional Programming
123Intermediate
impl Trait in Function Signatures
Functional Programming
124Intermediate
dyn Trait — Dynamic Dispatch
Functional Programming
125Advanced
Send and Sync Marker Traits
Functional Programming
128Advanced
Type-Level Booleans
Type SystemPhantom TypesCompile-Time Safety
129Advanced
Type-Level Natural Numbers — Peano Arithmetic
Functional Programming
130Advanced
Typestate Pattern — State Machines in Types
Functional Programming
131Advanced
Builder Pattern with Typestate
Type-Level ProgrammingDesign PatternsZero-Cost Abstractions
132Advanced
Phantom Units of Measure
Functional Programming
133Advanced
Variance — Covariance, Contravariance, Invariance
Functional Programming
135Intermediate
Generic Newtype Patterns
Functional Programming
136Expert
Existential Types
Functional Programming
137Expert
Rank-2 Types Simulation
Functional Programming
138Advanced
Type Witnesses / GADT Encoding
Functional Programming
140Expert
Type-Safe Printf
Functional Programming
141Expert
Singleton Types
Functional Programming
142Expert
Type Equality
Functional Programming
143Advanced
Associated Type Bounds
Functional Programming
144Advanced
Generic Associated Types (GAT) Basics
Functional Programming
145Advanced
GAT Collections
Functional Programming
146Advanced
Opaque Types
Functional Programming
147Advanced
Type Erasure
Functional Programming
148Intermediate
Sealed Traits
Functional Programming
149Intermediate
Extension Traits
Functional Programming
150Advanced
Coherence Rules
Functional Programming
176Expert
Introduction to GADTs
Functional Programming
177Expert
GADT Typed Expression Evaluator
Functional Programming
178Expert
Length-Indexed Lists
Functional Programming
179Expert
GADT Preventing Runtime Errors — Safe Head
Functional Programming
180Advanced
PhantomData for API Safety
Functional Programming
181Advanced
Type-Safe SQL-like Query Builder
Functional Programming
182Expert
Existential Types via Box<dyn Trait>
Functional Programming
231Intermediate
Product Types
Type SystemFunctional Patterns
257Intermediate
State Machine — Turnstile
State MachinesPattern Matching
322Advanced
322: The Future Trait and Poll
Functional Programming
340Advanced
340: Async Trait Pattern
Functional Programming
381Advanced
381: Blanket Implementations
Functional Programming
382Advanced
382: Associated Types (Advanced)
Functional Programming
384Intermediate
384: Trait Objects and `dyn Trait`
Functional Programming
385Intermediate
385: Trait Objects and `Any` (Runtime Type Information)
Functional Programming
386Intermediate
386: Object-Safe Traits
Functional Programming
387Intermediate
387: Sealed Trait Pattern
Functional Programming
388Intermediate
388: Extension Trait Pattern
Functional Programming
389Intermediate
389: Newtype Pattern
Functional Programming
390Intermediate
390: Type Alias and `impl Trait`
Functional Programming
391Intermediate
391: `impl Trait` in Return Position
Functional Programming
392Intermediate
392: `impl Trait` in Argument Position
Functional Programming
393Intermediate
393: Trait Bounds and Where Clauses
Functional Programming
394Intermediate
394: Supertrait Pattern
Functional Programming
395Intermediate
395: Default Methods in Traits
Functional Programming
396Intermediate
396: Simulating Trait Specialization
Functional Programming
397Intermediate
397: Marker Traits
Functional Programming
398Advanced
398: Auto Traits (`Send`, `Sync`, `Unpin`)
Functional Programming
399Advanced
399: Coherence and Orphan Rules
Functional Programming
400Intermediate
400: Static vs. Dynamic Trait Dispatch
Functional Programming
401Intermediate
401: Deref and Deref Coercions
Functional Programming
402Intermediate
402: Index and IndexMut Traits
Functional Programming
403Intermediate
403: Display and Debug Traits
Functional Programming
404Intermediate
404: From, Into, TryFrom, TryInto
Functional Programming
406Intermediate
406: Hash, Eq, and Ord Traits
Functional Programming
407Fundamental
407: The Default Trait
Functional Programming
408Intermediate
408: Clone and Copy Traits
Functional Programming
409Fundamental
409: Drop Trait and RAII
Functional Programming
410Fundamental
410: Arithmetic Operator Overloading
Functional Programming
416Advanced
416: Macro-Generated Builder Pattern
Functional Programming
433Fundamental
433: Macro-Defined State Machines
Functional Programming
436Advanced
436: Newtype Derive Patterns
Functional Programming
460Advanced
460: `Send` and `Sync` Bounds
Functional Programming
538Advanced
Variance: Covariant, Contravariant, Invariant
Functional Programming
543Intermediate
Lifetimes in dyn Trait
Functional Programming
601Fundamental
Coproduct Types (Sum Types)
Functional Programming
602Fundamental
Advanced Product Types
Functional Programming
702Advanced
unsafe trait
Functional Programming
734Advanced
734-typestate-basics — Typestate Basics
Functional Programming
735Advanced
735-typestate-builder — Typestate Builder
Functional Programming
736Advanced
736-typestate-connection — Typestate Connection
Functional Programming
737Advanced
737-typestate-file-handle — Typestate File Handle
Functional Programming
738Advanced
738-phantom-type-basics — Phantom Type Basics
Functional Programming
739Advanced
739-phantom-units-of-measure — Phantom Units of Measure
Functional Programming
740Advanced
740-phantom-variance-control — Phantom Variance Control
Functional Programming
742Advanced
742-type-witnesses — Type Witnesses
Functional Programming
743Fundamental
743-session-types — Session Types
Functional Programming
751Fundamental
751-mock-trait-pattern — Mock Trait Pattern
Functional Programming
759Fundamental
759-manual-serialize-trait — Manual Serialize Trait
Functional Programming
866Fundamental
Foldable Trait
Functional Programming
870Intermediate
870-trait-objects — Trait Objects (Dynamic Dispatch)
Functional Programming
872Intermediate
872-where-clauses — Where Clauses
Functional Programming
873Intermediate
873-associated-types — Associated Types
Functional Programming
874Advanced
874-phantom-types — Phantom Types
Functional Programming
875Intermediate
875-newtype-pattern — Newtype Pattern
Functional Programming
876Intermediate
876-type-aliases — Type Aliases
Functional Programming
877Intermediate
877-display-trait — Display Trait
Functional Programming
878Intermediate
878-from-into-traits — From/Into Traits
Functional Programming
896Intermediate
896-clone-copy — Clone and Copy Traits
Functional Programming
931Intermediate
931-records — Records and Functional Update
Functional Programming
Generics & Macros
46 examples077Intermediate
077 — Generic Bounds
Functional Programming
126Advanced
Const Generics
Functional Programming
127Intermediate
Const Functions — Compile-Time Computation
Functional Programming
134Advanced
Higher-Kinded Types Simulation
Functional Programming
383Advanced
383: Simulating Higher-Kinded Types with GATs
Functional Programming
411Fundamental
411: `macro_rules!` Basics
Functional Programming
412Fundamental
412: Macro Repetition Patterns
Functional Programming
413Fundamental
413: Macro Fragment Types (Designators)
Functional Programming
414Fundamental
414: Recursive Macro Patterns
Functional Programming
415Fundamental
415: Token Tree Munching
Functional Programming
419Fundamental
419: `cfg!` and Conditional Compilation
Functional Programming
420Fundamental
420: `env!` and `option_env!` — Compile-time Environment Variables
Functional Programming
421Fundamental
421: `include!`, `include_str!`, `include_bytes!`
Functional Programming
422Fundamental
422: Derive Macro Concepts
Functional Programming
423Advanced
423: Procedural Macro Introduction
Functional Programming
424Advanced
424: Proc Macro Derive
Functional Programming
425Advanced
425: Proc Macro Attribute
Functional Programming
426Advanced
426: Function-like Proc Macros
Functional Programming
427Fundamental
427: `syn` and `quote!` Basics
Functional Programming
428Fundamental
428: Macro Hygiene
Functional Programming
429Fundamental
429: Macro Scoping and Visibility
Functional Programming
430Fundamental
430: Macro Debugging Techniques
Functional Programming
431Fundamental
431: Counting Patterns in Macros
Functional Programming
432Fundamental
432: Macro Enum Dispatch
Functional Programming
434Fundamental
434: Domain-Specific Languages with Macros
Functional Programming
435Fundamental
435: Lazy Static Pattern
Functional Programming
437Fundamental
437: Test Helper Macros
Functional Programming
438Fundamental
438: `format_args!` and Efficient Formatting
Functional Programming
439Fundamental
439: Assert Variant Macros
Functional Programming
440Fundamental
440: Log Pattern Macros
Functional Programming
760Fundamental
760-serde-derive-concept — Serde Derive Concept
Functional Programming
761Fundamental
761-custom-serialize-logic — Custom Serialize Logic
Functional Programming
762Fundamental
762-custom-deserialize-logic — Custom Deserialize Logic
Functional Programming
766Fundamental
766-config-file-parsing — Config File Parsing
Functional Programming
767Fundamental
767-versioned-data-format — Versioned Data Format
Functional Programming
773Fundamental
773-serde-attributes-concept — Serde Attributes Concept
Functional Programming
774Advanced
774-const-generics-basics — Const Generics Basics
Functional Programming
776Fundamental
776-const-fn-basics — Const Fn Basics
Functional Programming
777Fundamental
777-const-assert-patterns — Const Assert Patterns
Functional Programming
778Intermediate
778-const-fibonacci — Const Fibonacci
Functional Programming
779Fundamental
779-const-lookup-table — Const Lookup Table
Functional Programming
780Advanced
780-const-generic-struct — Const Generic Struct
Functional Programming
781Fundamental
781-const-where-bounds — Const Where Bounds
Functional Programming
782Fundamental
782-const-eval-patterns — Const Eval Patterns
Functional Programming
783Fundamental
783-const-type-arithmetic — Const Type Arithmetic
Functional Programming
871Intermediate
871-generic-bounds — Generic Bounds
Functional Programming
Lifetimes & Memory Safety
89 examples101Intermediate
101-move-semantics — Move Semantics
Functional Programming
103Intermediate
103-borrowing-shared — Shared Borrowing
Functional Programming
104Intermediate
104-borrowing-mutable — Mutable Borrowing
Functional Programming
1046Advanced
1046-cow-collections — Clone-on-Write Collections
Functional Programming
105Intermediate
105-lifetime-basics — Lifetime Basics
Functional Programming
106Intermediate
106-lifetime-elision — Lifetime Elision Rules
Functional Programming
107Intermediate
107-lifetime-structs — Lifetimes in Structs
Functional Programming
108Intermediate
Rc\<T\> — Shared Ownership
Memory ManagementSmart Pointers
109Advanced
109-arc-threads — Arc<T>: Thread-Safe Shared Ownership
Functional Programming
110Intermediate
110-cell-interior — Cell<T>: Interior Mutability for Copy Types
Functional Programming
111Advanced
RefCell<T> — Runtime Borrow Checking
OwnershipBorrowingInterior Mutability
112Advanced
112-cow-clone-on-write — Cow<T>: Clone on Write
Functional Programming
116Intermediate
116-box-heap — Box<T>: Heap Allocation
Functional Programming
326Advanced
326: Capturing with async move
Functional Programming
342Advanced
342: Arc<Mutex<T>> Pattern
Functional Programming
369Advanced
369: Clone-on-Write (Cow)
Functional Programming
443Advanced
443: `Arc<Mutex<T>>` — Shared Mutable State
Functional Programming
444Advanced
444: `Arc<RwLock<T>>` — Multiple Readers, One Writer
Functional Programming
452Advanced
452: Atomic Types — Lock-Free Concurrent Primitives
Functional Programming
453Fundamental
453: Memory Ordering
Functional Programming
454Fundamental
454: Compare-and-Exchange (CAS)
Functional Programming
455Expert
455: Lock-Free Stack
Functional Programming
456Fundamental
456: `OnceLock` and `OnceCell` — Once-Initialized Values
Functional Programming
457Fundamental
457: Condition Variable Pattern
Functional Programming
467Fundamental
Epoch-Based Garbage Collection
Functional Programming
468Expert
Lock-Free Queue
Functional Programming
531Intermediate
Lifetime Annotations: 'a Basics
Functional Programming
532Intermediate
Multiple Lifetime Parameters
Functional Programming
533Intermediate
Lifetimes in Structs
Functional Programming
534Intermediate
Lifetimes in impl Blocks
Functional Programming
535Intermediate
Lifetimes in Enums
Functional Programming
536Intermediate
'static Lifetime
Functional Programming
537Intermediate
Lifetime Coercion and Subtyping
Functional Programming
539Intermediate
Non-Lexical Lifetimes (NLL)
Functional Programming
540Intermediate
Borrow Checker Internals
Functional Programming
541Intermediate
Lifetime Elision Rules
Functional Programming
542Intermediate
Higher-Ranked Trait Bounds (for<'a>)
Functional Programming
544Intermediate
Lifetimes in Closures
Functional Programming
545Intermediate
Split Borrows from Structs
Functional Programming
546Intermediate
Reborrowing Patterns
Functional Programming
547Intermediate
Polonius Borrow Checker Concepts
Functional Programming
548Intermediate
Named Return Lifetimes
Functional Programming
549Intermediate
PhantomData for Lifetime Markers
Functional Programming
550Advanced
Cell and RefCell for Interior Mutability
Functional Programming
551Intermediate
Rc and Weak for Shared Ownership
Functional Programming
553Advanced
Self-Referential Structs
Functional Programming
554Intermediate
Safe Transmute Patterns
Functional Programming
555Intermediate
Owning References Pattern
Functional Programming
556Intermediate
Rental Pattern
Functional Programming
557Intermediate
Output Lifetime Patterns
Functional Programming
558Intermediate
Input Lifetime Patterns
Functional Programming
559Intermediate
Region Inference
Functional Programming
560Intermediate
Lifetime Cheatsheet
Functional Programming
699Fundamental
Raw Pointer Basics
Functional Programming
700Advanced
Unsafe Blocks
Functional Programming
701Advanced
Unsafe Functions
Functional Programming
703Fundamental
raw pointer arithmetic
Functional Programming
704Fundamental
dereferencing raw ptr
Functional Programming
705Fundamental
null pointer check
Functional Programming
706Advanced
unsafe cell
Functional Programming
707Fundamental
transmute basics
Functional Programming
708Fundamental
transmute safe patterns
Functional Programming
709Fundamental
unions in rust
Functional Programming
710Fundamental
extern c functions
Functional Programming
711Fundamental
no mangle export
Functional Programming
713Fundamental
ffi repr c structs
Functional Programming
714Fundamental
ffi callbacks
Functional Programming
716Advanced
global allocator
Functional Programming
717Fundamental
volatile memory
Functional Programming
718Fundamental
soundness principles
Functional Programming
719Fundamental
Struct of Arrays (SoA) Pattern
Functional Programming
720Fundamental
Cache-Friendly Iteration
Functional Programming
721Fundamental
MaybeUninit — Safe Uninitialized Memory
Functional Programming
722Fundamental
Memory Layout and `repr` Attributes
Functional Programming
723Advanced
Branchless Programming
Functional Programming
724Fundamental
Zero-Copy Parsing
Functional Programming
726Fundamental
Memory Pool Pattern
Functional Programming
727Fundamental
Portable SIMD Concepts
Functional Programming
728Fundamental
728-inline-hints — Inline Hints
Functional Programming
729Advanced
729-avoid-allocations — Avoid Allocations
Functional Programming
731Fundamental
731-tiered-memory-strategy — Tiered Memory Strategy
Functional Programming
733Fundamental
733-profile-guided-patterns — Profile-Guided Patterns
Functional Programming
768Fundamental
768-zero-copy-deserialize — Zero-Copy Deserialize
Functional Programming
895Intermediate
895-move-semantics — Move Semantics
Functional Programming
897Intermediate
897-borrowing-shared — Shared Borrowing (&T)
Functional Programming
898Intermediate
898-borrowing-mutable — Mutable Borrowing (&mut T)
Functional Programming
899Intermediate
899-lifetime-basics — Lifetime Basics
Functional Programming
986Fundamental
986 Mutex Basics
Functional Programming
987Fundamental
987 Rwlock Pattern
Functional Programming
Async & Concurrency
79 examples1000Advanced
1000 — Reactive Stream
Functional Programming
1001Intermediate
1001 — Event Loop
Functional Programming
1002Advanced
1002 — Backpressure
Functional Programming
1122Fundamental
List Filter — Select Elements by Predicate
ListsHOF
1124Intermediate
1124-listfilter-select-elements-by-predicate — List.filter: Select Elements by Predicate
Functional Programming
276Intermediate
Parallel Letter Frequency
Higher-Order Functions
321Intermediate
321: async fn and .await Fundamentals
Functional Programming
323Intermediate
323: async blocks and Lazy Evaluation
Functional Programming
324Advanced
324: Running Futures Concurrently with join!
Functional Programming
325Advanced
325: Racing Futures with select!
Functional Programming
327Advanced
327: Spawning Concurrent Tasks
Functional Programming
328Intermediate
328: Async Channels (mpsc)
Functional Programming
329Advanced
329: Async Streams
Functional Programming
330Advanced
330: Async Sink — Buffered Writing
Functional Programming
331Advanced
331: Timeouts with time::timeout
Functional Programming
332Advanced
332: Retry Async with Exponential Backoff
Functional Programming
333Advanced
333: Async Recursion
Functional Programming
334Advanced
334: Pin and Unpin
Functional Programming
335Expert
335: Waker and Context
Functional Programming
336Advanced
336: Executor Basics
Functional Programming
337Advanced
337: Async Mutex
Functional Programming
338Advanced
338: Async RwLock — Multiple Readers, One Writer
Functional Programming
339Advanced
339: Semaphore — Controlling Concurrency
Functional Programming
341Intermediate
341: Buffered Stream — BufReader and BufWriter
Functional Programming
341Intermediate
341: MPSC Channel
Functional Programming
342Advanced
342: Async I/O Concepts
Functional Programming
343Advanced
343: Cancellation Token
Functional Programming
343Intermediate
343: Producer-Consumer Pattern
Functional Programming
344Advanced
344: Structured Concurrency
Functional Programming
345Advanced
345: Async Drop
Functional Programming
346Advanced
346: Runtime Context
Functional Programming
347Advanced
347: Blocking in Async
Functional Programming
348Advanced
348: Async Generator Pattern
Functional Programming
349Advanced
349: Broadcast Channel
Functional Programming
350Intermediate
350: Oneshot Channel
Functional Programming
441Fundamental
441: Thread Basics — Spawn and Join
Functional Programming
442Fundamental
442: Scoped Threads — Borrowing Across Threads
Functional Programming
445Intermediate
445: MPSC Channels — Message Passing Between Threads
Functional Programming
446Fundamental
446: Thread Pool Pattern
Functional Programming
447Advanced
447: Work Stealing — Load Balancing Across Threads
Functional Programming
448Fundamental
448: Rayon Parallel Iterators — Data Parallelism
Functional Programming
449Fundamental
449: Rayon Join — Fork-Join Parallelism
Functional Programming
450Fundamental
450: Crossbeam Channels — Advanced Channel Patterns
Functional Programming
451Fundamental
451: Crossbeam Select — Multiplexing Channels
Functional Programming
458Advanced
458: Barrier Synchronization
Functional Programming
459Fundamental
459: Thread-Local Storage
Functional Programming
461Intermediate
461: Producer-Consumer Pattern
Functional Programming
462Fundamental
462: Pipeline Concurrency
Functional Programming
463Fundamental
463: Fan-Out / Fan-In Pattern
Functional Programming
464Advanced
464: Actor Pattern
Functional Programming
465Fundamental
465: Message Passing vs. Shared Memory
Functional Programming
466Fundamental
Concurrent HashMap
Functional Programming
469Fundamental
Parallel Reduce
Functional Programming
470Fundamental
Concurrent BTree
Functional Programming
754Fundamental
754-testing-async-code — Testing Async Code
Functional Programming
920Intermediate
920-buffered-stream — Buffered Stream
Functional Programming
921Advanced
921-async-io — Async I/O
Functional Programming
922Advanced
922-cancellation-token — Cancellation Token
Functional Programming
923Fundamental
923-thread-pool — Thread Pool
Functional Programming
924Advanced
924-work-stealing — Work Stealing
Functional Programming
979Fundamental
979 Future Basics
Functional Programming
980Intermediate
980 Async Map
Functional Programming
981Intermediate
981 Async Sequence
Functional Programming
982Advanced
982 Async Join
Functional Programming
983Fundamental
983 Channel Basics
Functional Programming
984Fundamental
984 Channel Pipeline
Functional Programming
985Fundamental
985 Select Pattern
Functional Programming
988Fundamental
988 Thread Local
Functional Programming
989Fundamental
989 Once Init
Functional Programming
990Fundamental
990 Semaphore
Functional Programming
991Advanced
991 Barrier Sync
Functional Programming
992Advanced
992 Actor Pattern
Functional Programming
993Intermediate
993 Work Queue
Functional Programming
994Fundamental
994 Map Reduce
Functional Programming
995Fundamental
995 Pipeline Stages
Functional Programming
996Advanced
996 Timeout Pattern
Functional Programming
997Advanced
997 Retry Backoff
Functional Programming
998Advanced
998 Circuit Breaker
Functional Programming
999Advanced
999 Rate Limiter
Functional Programming
FP Abstractions
107 examples054Intermediate
054 — Applicative Validation
Functional Programming
074Advanced
074 — Bifunctor
Functional Programming
1079Expert
Writer Monad — Logging Computation
Monadic Patterns
1081Advanced
Lenses
Higher-order functions
1084Intermediate
Monoid Pattern
Functional Programming
1086Advanced
Lenses — Functional Getters and Setters
Functional Abstractions
1136Intermediate
Monoid — Fold with Closures and Traits
Pattern MatchingHigher-Order FunctionsType-Class Patterns
184Expert
Introduction to Free Monads
Functional Programming
185Expert
Console DSL with Free Monad
Functional Programming
186Expert
Free Monad Interpreters
Functional Programming
187Expert
Free Monad with State
Functional Programming
188Expert
Operational Monad
Functional Programming
189Expert
Introduction to Algebraic Effects
Functional Programming
190Expert
Effect Handlers
Functional Programming
191Expert
Effects as Exceptions
Functional Programming
192Expert
Effects as State
Functional Programming
193Expert
Effects as Async
Functional Programming
194Advanced
Coroutines and Generators
Functional Programming
195Advanced
Continuation-Passing Style
Functional Programming
196Expert
Delimited Continuations
Functional Programming
199Expert
Scott Encoding
Functional Programming
200Advanced
Tagless Final
DSLsType System
201Advanced
Introduction to Lenses — The Nested Update Problem
Functional Programming
202Advanced
Lens Basics — Get and Set
Functional Programming
203Advanced
Lens Laws
Functional Programming
204Advanced
Lens Composition — Zoom Into Nested Structs
Functional PatternsOpticsImmutable Updates
205Advanced
Lens Modify
Functional Programming
206Advanced
Prism Basics — Optics for Enum Variants
Functional Programming
207Advanced
Prism Laws
Functional Programming
208Advanced
Traversal — Focus on Zero or More Targets
Functional Programming
209Advanced
Affine Traversal — At Most One Focus
Functional Programming
210Advanced
Iso Basics — Isomorphisms
Functional Programming
211Advanced
Optics Hierarchy
Functional Programming
212Expert
Van Laarhoven Lenses
Functional Programming
213Intermediate
Practical Lens — Deeply Nested Config Update
Functional Programming
218Expert
Anamorphism — Unfold to Build Recursive Structures
Functional Programming
219Expert
Hylomorphism — Ana then Cata, Fused
Functional Programming
220Expert
Paramorphism — Cata with Access to Original Subtree
Functional Programming
221Expert
Apomorphism — Ana that Can Short-Circuit
Functional Programming
222Expert
Histomorphism — Cata with Full History
Functional Programming
223Expert
Zygomorphism — Two Mutually Dependent Folds
Functional Programming
224Expert
Mutumorphism — Genuinely Mutual Recursion
Functional Programming
225Expert
Prepromorphism — Apply Natural Transformation at Each Step
Functional Programming
226Expert
Category Basics
Functional Programming
227Advanced
Functor Category — Functors as Objects, Natural Transformations as Morphisms
Category Theory
228Advanced
Natural Transformations
Category Theory
229Advanced
Monoid as a Category
Category Theory
230Intermediate
Semigroup
Algebra / Type Classes
233Expert
Curry-Howard Correspondence
Functional Programming
234Expert
Propositions as Types
Functional Programming
235Expert
Yoneda Lemma
Functional Programming
236Expert
Coyoneda
Functional Programming
237Expert
Day Convolution
Functional Programming
238Expert
Profunctor Basics
Functional Programming
239Expert
Strong Profunctor
Functional Programming
240Expert
Choice Profunctor
Functional Programming
241Expert
Comonad Basics
Functional Programming
242Expert
Store Comonad
Functional Programming
243Expert
Environment Comonad
Functional Programming
244Expert
Comonad Laws
Functional Programming
245Expert
Cofree Comonad
Functional Programming
246Expert
Adjunctions
Functional Programming
247Expert
Limits and Colimits
Functional Programming
248Expert
Kan Extensions
Functional Programming
249Expert
Monad from Adjunction
Functional Programming
250Expert
Grand Synthesis
Functional Programming
260Advanced
Functor Comparable Set
Functors and Modules
593Fundamental
Interpreter Pattern
Functional Programming
594Advanced
Continuation-Passing Style (CPS)
Functional Programming
597Expert
Scott encoding rust
Functional Programming
598Fundamental
Finally tagless
Functional Programming
599Expert
Free monad rust
Functional Programming
600Expert
Effect system sim
Functional Programming
603Fundamental
Functor Laws
Functional Programming
604Expert
Monad Laws
Functional Programming
605Intermediate
Applicative Laws
Functional Programming
607Fundamental
Fixed-Point Types
Functional Programming
609Expert
Anamorphism
Functional Programming
610Expert
Hylomorphism
Functional Programming
611Expert
Paramorphism
Functional Programming
612Expert
Zygomorphism
Functional Programming
613Fundamental
Futumorphism
Functional Programming
614Expert
Histomorphism
Functional Programming
615Advanced
Optics: optics intro
Functional Programming
616Fundamental
Optics: lens pattern
Functional Programming
617Advanced
Optics: prism pattern
Functional Programming
618Expert
Optics: traversal optics
Functional Programming
619Fundamental
Optics: iso pattern
Functional Programming
620Advanced
Optics: affine traversal
Functional Programming
621Expert
Optics: profunctor optics
Functional Programming
622Advanced
Optics: classy optics
Functional Programming
623Fundamental
Optics: functional rust grand tour
Functional Programming
850Fundamental
Functors Introduction
Functional Programming
852Intermediate
Applicative Functor Basics
Functional Programming
853Intermediate
Applicative Validation
Functional Programming
854Expert
Option Monad
Functional Programming
858Fundamental
Kleisli Composition
Functional Programming
859Expert
State Monad
Functional Programming
860Expert
Reader Monad
Functional Programming
861Expert
Writer Monad
Functional Programming
862Expert
Monad Transformers
Functional Programming
863Fundamental
Traverse with Option
Functional Programming
865Expert
Sequence Monadic
Functional Programming
869Expert
869-continuation-monad — Continuation Monad
Functional Programming
933Fundamental
933-map-functor — Map / Functor
Functional Programming
941Expert
941 Identity Monad
Functional Programming
949Expert
949 Profunctor Intro
Functional Programming
Testing & Code Quality
13 examples732Intermediate
732-benchmarking-harness — Benchmarking Harness
Functional Programming
744Fundamental
744-unit-test-patterns — Unit Test Patterns
Functional Programming
745Fundamental
745-integration-test-setup — Integration Test Setup
Functional Programming
746Fundamental
746-doc-test-patterns — Doc Test Patterns
Functional Programming
747Fundamental
747-test-fixtures — Test Fixtures
Functional Programming
748Fundamental
748-property-based-testing — Property-Based Testing
Functional Programming
749Fundamental
749-fuzzing-concepts — Fuzzing Concepts
Functional Programming
750Fundamental
750-snapshot-testing — Snapshot Testing
Functional Programming
752Fundamental
752-test-doubles-taxonomy — Test Doubles Taxonomy
Functional Programming
753Intermediate
753-bench-harness-pattern — Benchmark Harness Pattern
Functional Programming
756Fundamental
756-tempfile-testing — Tempfile Testing
Functional Programming
757Fundamental
757-golden-file-tests — Golden File Tests
Functional Programming
758Fundamental
758-test-isolation-patterns — Test Isolation Patterns
Functional Programming