ExamplesBy LevelBy TopicLearning Paths
πŸ¦€

Functional Rust

Learn functional programming by translating OCaml idioms into idiomatic Rust.
Progressive examples with side-by-side comparisons and full explanations.

All Examples

001Intermediate

Applying a Function Twice

Higher-Order FunctionsFunctional CompositionCurrying
001Intermediate

001 β€” Higher-Order Functions

Functional Programming
001Fundamental

001 β€” Last Element of a List

Functional Programming
002Intermediate

Function Composition

Higher-Order FunctionsClosuresComposition
002Fundamental

Last Two Elements

ListsPattern Matching
002Intermediate

002 β€” List Operations

Functional Programming
003Fundamental

K-th Element

ListsIndexing
003Intermediate

003 β€” Pattern Matching

Functional Programming
003Fundamental

Pipeline Operator

Higher-Order FunctionsFunction Composition
004Fundamental

List Length

ListsRecursion
004Intermediate

List Map From Scratch

ListsHigher-Order Functions
004Intermediate

004 β€” Option and Result

Functional Programming
005Intermediate

005 β€” Currying and Partial Application

Functional Programming
005Intermediate

List Filter From Scratch

Higher-Order FunctionsListsPredicates
005Fundamental

005 β€” Reverse a List

Functional Programming
006Intermediate

006 β€” Function Composition

Functional Programming
006Fundamental

006 β€” Palindrome Check

Functional Programming
007Intermediate

Flatten Nested List

Recursive Data StructuresEnums
008Fundamental

Eliminate Consecutive Duplicates

ListsHigher-Order Functions
009Intermediate

Pack Consecutive Duplicates

ListsGrouping
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
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
028Intermediate

028 β€” Sorting a List of Lists According to Length

Functional Programming
029Intermediate

029 β€” Binary Tree (Algebraic Data Type)

Functional Programming
030Intermediate

030 β€” Count the Leaves of a Binary Tree

Functional Programming
031Intermediate

031 β€” Collect the Leaves of a Binary Tree in a List

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
036Intermediate

036 β€” Represent a Binary Tree as a String

Functional Programming
037Intermediate

037 β€” Preorder Traversal Sequence

Functional Programming
038Intermediate

038 β€” Inorder Traversal Sequence

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
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
051Intermediate

051 β€” Applying a Function Twice

Functional Programming
054Intermediate

054 β€” Applicative Validation

Functional Programming
056Intermediate

fold_right β€” Structural Recursion

Higher-Order Functions
056Expert

056 β€” Result as a Monad

Functional Programming
057Intermediate

fold_left β€” Tail-Recursive Accumulator

Higher-Order Functions
058Fundamental

Variants β€” Days of the Week

Algebraic Data Types
059Intermediate

Recursive Variant β€” Expression Tree

Algebraic Data Types
060Fundamental

Option Type β€” Safe List Maximum

Error Handling
061Intermediate

061 β€” Binary Tree (Size, Membership, Traversal)

Functional Programming
062Fundamental

062 β€” Isogram Check

Functional Programming
062Intermediate

062 β€” Records (Structs)

Functional Programming
063Intermediate

063 β€” Run-Length Encoding

Functional Programming
063Intermediate

063 β€” Stack Module

Functional Programming
064Intermediate

064 β€” Balanced Parentheses

Functional Programming
065Intermediate

065 β€” Association List

Functional Programming
066Advanced

066 β€” Phantom Types (Type-Safe Units)

Functional Programming
067Intermediate

067 β€” Lazy Sequences (Seq Module)

Functional Programming
068Fundamental

068 β€” Frequency Counter (Map Module)

Functional Programming
068Intermediate

068 β€” Tail-Recursive Accumulator

Functional Programming
069Intermediate

069 β€” Sieve of Eratosthenes

Functional Programming
069Advanced

069 β€” Unfold β€” Generate a Sequence from a Seed

Functional Programming
070Fundamental

070 β€” Hamming Distance

Functional Programming
070Intermediate

070 β€” Scan Left (Running Accumulation)

Functional Programming
071Fundamental

071 β€” Collatz Conjecture

Functional Programming
071Intermediate

071 β€” GCD and LCM

Functional Programming
072Intermediate

072 β€” Error Accumulation (Validation Type)

Functional Programming
072Intermediate

072 β€” Railway-Oriented Programming

Functional Programming
073Advanced

073 β€” Topological Sort

Functional Programming
073Intermediate

073 β€” Validated Types (Parse, Don't Validate)

Functional Programming
074Advanced

074 β€” Bifunctor

Functional Programming
074Intermediate

074 β€” Currying and Partial Application (Applied)

Functional Programming
075Advanced

075 β€” Difference List

Functional Programming
075Intermediate

075 β€” Merge Sort

Functional Programming
076Intermediate

076 β€” GCD and LCM (Ownership Focus)

Functional Programming
076Intermediate

076 β€” Trait Objects (Dynamic Dispatch)

Functional Programming
077Intermediate

077 β€” Generic Bounds

Functional Programming
077Intermediate

077 β€” Matrix Operations

Functional Programming
078Advanced

078 β€” Topological Sort (Ownership Focus)

Functional Programming
078Intermediate

078 β€” Where Clauses

Functional Programming
079Intermediate

079 β€” Associated Types

Functional Programming
079Expert

079 β€” Lambda Calculus Interpreter

Functional Programming
080Expert

080 β€” Catamorphism

Functional Programming
081Advanced

081 β€” Difference List

Functional Programming
081Intermediate

081 β€” Newtype Pattern

Functional Programming
082Fundamental

082 β€” Nucleotide Count

Functional Programming
082Intermediate

082 β€” Type Aliases

Functional Programming
083Intermediate

083 β€” Display Trait

Functional Programming
083Intermediate

083 β€” Robot Simulator

Functional Programming
084Intermediate

084 β€” From and Into Traits

Functional Programming
084Fundamental

084 β€” Phone Number Validation

Functional Programming
085Intermediate

085 β€” Accumulate (Custom Map)

Functional Programming
085Intermediate

085 β€” Iterator Trait

Functional Programming
086Intermediate

086 β€” Custom Iterator with State

Functional Programming
086Fundamental

086 β€” Space Age

Functional Programming
087Fundamental

087 β€” Difference of Squares

Functional Programming
087Intermediate

087 β€” Iterator Adapters

Functional Programming
088Intermediate

088 β€” Allergies

Functional Programming
088Intermediate

088 β€” Iterator Consumers

Functional Programming
089Intermediate

089 β€” Bob

Functional Programming
089Intermediate

089 β€” Lazy Sequences

Functional Programming
090Intermediate

Frequency Analysis β€” Letter Distribution

String Processing
090Intermediate

090 β€” Infinite Iterators

Functional Programming
091Fundamental

091 β€” Caesar Cipher

Functional Programming
091Intermediate

091 β€” Zip and Unzip

Functional Programming
092Fundamental

092 β€” Pangram Check

Functional Programming
092Intermediate

092 β€” Scan Accumulate

Functional Programming
093Fundamental

093 β€” Isogram Check

Functional Programming
093Intermediate

093 β€” Windows and Chunks

Functional Programming
094Intermediate

094 β€” Peekable Iterator

Functional Programming
094Intermediate

094 β€” Run-Length Encoding

Functional Programming
095Intermediate

095 β€” Balanced Parentheses

Functional Programming
095Intermediate

095 β€” Double-Ended Iterator

Functional Programming
096Intermediate

096 β€” Exact Size Iterator

Functional Programming
096Advanced

096 β€” Recursive Descent Parser

Functional Programming
097Intermediate

097 β€” Flatten and Flat Map

Functional Programming
097Advanced

097 β€” Zipper

Functional Programming
098Expert

098 β€” Church Numerals

Functional Programming
098Intermediate

098 β€” Partition Iterator

Functional Programming
099Advanced

099 β€” Continuation-Passing Style (CPS)

Functional Programming
099Intermediate

099 β€” Group Consecutive Equal Elements

Functional Programming
100Advanced

Dijkstra's Shortest Path

Graph AlgorithmsPriority QueuesFunctional Data Structures
100Advanced

100 β€” Phantom Types

Functional Programming
100Intermediate

100 β€” Step By

Functional Programming
1000Intermediate

1000 β€” List Map

Functional Programming
1000Advanced

1000 β€” Reactive Stream

Functional Programming
1001Advanced

Binary Tree β€” Size, Membership, Traversal

Functional Programming
1001Intermediate

1001 β€” Event Loop

Functional Programming
1001Intermediate

1001 β€” List Filter

Functional Programming
1002Advanced

1002 β€” Backpressure

Functional Programming
1002Intermediate

1002 β€” List Fold Left

Functional Programming
1002Intermediate

Stack Module with Signature

Functional Programming
1003Intermediate

1003 β€” Custom Error Types

Functional Programming
1003Fundamental

1003 β€” Leap Year

Functional Programming
1003Intermediate

Map and Fold on Trees

Functional Programming
1004Intermediate

1004 β€” Error Conversion

Functional Programming
1004Fundamental

1004 β€” Leap Year

Functional Programming
1004Intermediate

1004 β€” Quicksort

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
101Intermediate

Lazy Sequences

Lazy/Infinite Sequences
101Intermediate

101-move-semantics β€” Move Semantics

Functional Programming
1010Intermediate

1010-partition-results β€” Partition Results

Functional Programming
1011Intermediate

1011-try-operator β€” The ? (Try) Operator

Functional Programming
1012Advanced

1012-never-type β€” The Never Type (!)

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
1019Intermediate

1019-fallible-iterator β€” Fallible Iterator

Functional Programming
102Intermediate

102-clone-copy β€” Clone vs Copy

Functional Programming
102Fundamental

102-frequency-counter β€” Frequency Counter

Functional Programming
1020Intermediate

1020-try-fold β€” try_fold

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
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
103Intermediate

103-borrowing-shared β€” Shared Borrowing

Functional Programming
103Advanced

103-unfold β€” Unfold: Generating Sequences from Seeds

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
1033Advanced

1033-binary-heap-topk β€” Top-K with BinaryHeap

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
1037Intermediate

1037-adjacency-list β€” Adjacency List Graph

Functional Programming
1038Intermediate

1038-adjacency-matrix β€” Adjacency Matrix Graph

Functional Programming
1039Intermediate

1039-stack-via-vec β€” Stack Using Vec

Functional Programming
104Intermediate

104-borrowing-mutable β€” Mutable Borrowing

Functional Programming
104Intermediate

104-scan-left β€” Scan Left (Running Accumulation)

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
1046Advanced

1046-cow-collections β€” Clone-on-Write Collections

Functional Programming
1047Intermediate

1047-flat-tree β€” Flat Binary Tree in Vec

Functional Programming
1048Advanced

1048-zipper-vec β€” Vec Zipper

Functional Programming
1049Advanced

1049-persistent-map β€” Persistent HashMap

Functional Programming
105Intermediate

105-lifetime-basics β€” Lifetime Basics

Functional Programming
105Intermediate

105-trie β€” Trie (Prefix Tree)

Functional Programming
1050Intermediate

1050-interning β€” String Interning

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
1056Intermediate

1056-edit-distance β€” Edit Distance (Levenshtein)

Functional Programming
1057Advanced

1057-matrix-chain β€” Matrix Chain Multiplication

Functional Programming
1058Intermediate

1058-longest-increasing-subseq β€” Longest Increasing Subsequence

Functional Programming
1059Advanced

1059-rod-cutting β€” Rod Cutting

Functional Programming
106Intermediate

106-lifetime-elision β€” Lifetime Elision Rules

Functional Programming
1060Advanced

1060-partition-equal-subset β€” Partition Equal Subset Sum

Functional Programming
1061Intermediate

1061-word-break β€” Word Break

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
1065Intermediate

1065-combinations-sum β€” Combination Sum

Functional Programming
1066Advanced

1066-subsets-power-set β€” Subsets / Power Set

Functional Programming
1067Intermediate

1067-letter-combinations β€” Phone Keypad Letter Combinations

Functional Programming
1068Intermediate

1068-maze-solver β€” Maze Solver

Functional Programming
1069Intermediate

1069-graph-coloring β€” Graph Coloring

Functional Programming
107Intermediate

107-lifetime-structs β€” Lifetimes in Structs

Functional Programming
1070Advanced

1070-hamiltonian-path β€” Hamiltonian Path

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
1077Expert

Phantom Type State Machine β€” File Handle

Type System / Phantom Types
1078Advanced

Visitor Pattern via Fold β€” Expression Evaluator

Monadic Patterns / Higher-Order Functions
1079Expert

Writer Monad β€” Logging Computation

Monadic Patterns
108Intermediate

Rc\<T\> β€” Shared Ownership

Memory ManagementSmart Pointers
1080Advanced

Topological Sort via Kahn's Algorithm

Graphs
1081Advanced

Lenses

Higher-order functions
1082Advanced

Tail-Recursive Map with CPS

Higher-Order Functions
1083Advanced

Red-Black Tree

Trees
1084Intermediate

Monoid Pattern

Functional Programming
1086Advanced

Lenses β€” Functional Getters and Setters

Functional Abstractions
1088Advanced

Red-Black Tree β€” Balanced Insert

TreesBalanced Data Structures
109Advanced

109-arc-threads β€” Arc<T>: Thread-Safe Shared Ownership

Functional Programming
1091Advanced

Red-Black Tree β€” Balanced Insert (Iterator + Free Functions)

TreesBalancing
1093Fundamental

Currying and Partial Application

FunctionsHigher-Order Programming
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
1098Advanced

Monoid Pattern β€” Generic Combining

Type ClassesAlgebraic Abstractions
1099Advanced

Dijkstra's Shortest Path with Priority Queue

GraphsPriority Queues
110Intermediate

110-cell-interior β€” Cell<T>: Interior Mutability for Copy Types

Functional Programming
1103Intermediate

Monoid Pattern β€” Trait-Based Combining

Functional Programming
1107Intermediate

Currying, Partial Application, and Sections

Higher-Order Functions
111Advanced

RefCell<T> β€” Runtime Borrow Checking

OwnershipBorrowingInterior Mutability
1110Advanced

Dijkstra's Shortest Path β€” Priority Queue

GraphsAlgorithms
1113Advanced

0/1 Knapsack with Dynamic Programming (Functional Style)

Functional Programming
112Advanced

112-cow-clone-on-write β€” Cow<T>: Clone on Write

Functional Programming
1121Intermediate

1121-listmap-transform-every-element β€” List.map: Transform Every Element

Functional Programming
1122Fundamental

1122-leap-year β€” Leap Year

Functional Programming
1122Fundamental

List Filter β€” Select Elements by Predicate

ListsHOF
1123Intermediate

List.fold_left β€” Accumulate a Result

Functional Programming
1123Intermediate

1123-sorting-algorithmsquicksort β€” Quicksort

Functional Programming
1124Intermediate

1124-listfilter-select-elements-by-predicate β€” List.filter: Select Elements by Predicate

Functional Programming
1124Intermediate

List.sort β€” Sort with Custom Comparator

Functional Programming
1125Intermediate

List.partition β€” Split by Predicate

Functional Programming
1125Fundamental

1125-reverse-string β€” Reverse a String

Functional Programming
113Intermediate

113-string-str β€” String vs &str

Functional Programming
1136Intermediate

Monoid β€” Fold with Closures and Traits

Pattern MatchingHigher-Order FunctionsType-Class Patterns
114Intermediate

114-slice-patterns β€” Slice Patterns

Functional Programming
1143Intermediate

Huffman Encoding β€” Greedy Tree Building

TreesGreedy AlgorithmsPriority Queues
1147Advanced

Dijkstra's Shortest Path β€” Functional Priority Queue

GraphsAlgorithms
115Intermediate

115-vec-patterns β€” Vec Iterator Patterns

Functional Programming
116Intermediate

116-box-heap β€” Box<T>: Heap Allocation

Functional Programming
1162Fundamental

Hello World β€” Functions and Greetings

Functional Programming
1163Intermediate

Currying, Partial Application, and Operator Sections

Higher-Order Functions
1164Advanced

Shortest Path Algorithm with Functional Priority Queue

Graphs
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
1167Advanced

0/1 Knapsack Solved with Memoized Recursion

Functional Programming
1168Intermediate

Generating All Subsets of a List Recursively

Functional Programming
1169Advanced

Dijkstra's Shortest Path with a Priority Queue

GraphsAlgorithms
117Advanced

Recursive Types

Functional Programming
1172Advanced

Persistent Vector (Functional Array)

Functional Data StructuresTreesPersistent Structures
1173Advanced

Knapsack Problem β€” Dynamic Programming (Functional)

Dynamic ProgrammingFunctional Algorithms
118Intermediate

Deref Coercions

Functional Programming
119Advanced

Zero-Cost Abstractions

Functional Programming
120Intermediate

Closure Types: Fn, FnMut, FnOnce

Functional Programming
121Intermediate

Closure Capture Modes

Functional Programming
122Intermediate

Higher-Order Functions with Lifetime Constraints

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
126Advanced

Const Generics

Functional Programming
127Intermediate

Const Functions β€” Compile-Time Computation

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
134Advanced

Higher-Kinded Types Simulation

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
139Expert

HList β€” Heterogeneous List

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
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
170Advanced

Error Recovery

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
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
183Expert

Heterogeneous Vector with Safe Downcast

Functional Programming
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
197Advanced

Trampoline

Functional Programming
198Expert

Church Encoding

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
214Advanced

Fold Optic β€” Read-Only Multi-Focus Aggregation

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
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
231Intermediate

Product Types

Type SystemFunctional Patterns
232Intermediate

Sum Types

Functional Programming
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
251Intermediate

Quicksort

Sorting algorithms
252Fundamental

Insertion Sort

Sorting Algorithms
253Intermediate

Graph BFS

Graphs
254Intermediate

Graph DFS

Graphs
255Intermediate

Lazy Fibonacci

Lazy / Infinite Sequences
256Intermediate

256: Chaining Iterators with chain()

Functional Programming
256Intermediate

Memoization β€” Fibonacci with Hashtable Cache

MemoizationHigher-Order Functions
257Intermediate

257: Pairing Elements with zip()

Functional Programming
257Intermediate

State Machine β€” Turnstile

State MachinesPattern Matching
258Intermediate

258: Index-Value Pairs with enumerate()

Functional Programming
258Intermediate

Monadic Option Chaining

Monadic patterns
259Intermediate

259: Flattening with flat_map()

Functional Programming
259Intermediate

Result Monad β€” Error Chaining

Monadic patterns
260Advanced

Functor Comparable Set

Functors and Modules
260Intermediate

260: Stateful Accumulation with scan()

Functional Programming
261Intermediate

Binary Search Tree β€” Insert and Search

Trees
261Intermediate

261: Lookahead with Peekable

Functional Programming
262Intermediate

262: Sliding Windows over Slices

Functional Programming
262Intermediate

Rose Tree β€” Multi-Way Tree with Fold

Trees
263Advanced

AVL Tree β€” Self-Balancing BST

Trees
263Intermediate

263: Fixed-Size Chunks Iteration

Functional Programming
264Intermediate

264: Conditional Stopping with take_while()

Functional Programming
264Fundamental

String Anagram Check

String Processing
265Fundamental

Caesar Cipher β€” Functional Encryption

String Processing
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
271Intermediate

Sublist Classification

ListsHOFPattern Matching
272Intermediate

272: One-Level Flattening with flatten()

Functional Programming
272Advanced

Tree Zipper

TreesFunctional Data StructuresZippers
273Intermediate

Fibonacci Variants

RecursionIterationAccumulatorsFold
273Intermediate

273: Debugging Iterators with inspect()

Functional Programming
274Intermediate

Binary ↔ Decimal Fold

StringsFoldsNumeric ConversionRecursion
274Intermediate

274: Numeric Reductions: sum() and product()

Functional Programming
275Intermediate

275: Finding Extremes with min() and max()

Functional Programming
275Intermediate

Yacht Dice Scoring

Pattern MatchingAlgebraic Data Types
276Intermediate

276: Custom Comparison with min_by() and max_by()

Functional Programming
276Intermediate

Parallel Letter Frequency

Higher-Order Functions
277Intermediate

Circular Buffer β€” Functional Queue

Data Structures
277Intermediate

277: Counting Elements with count()

Functional Programming
278Intermediate

278: Getting the Last Element with last()

Functional Programming
278Intermediate

Sierpinski Triangle β€” Recursive ASCII Art

Math/Recursion
279Intermediate

279: Random Access with nth()

Functional Programming
279Fundamental

Pascal's Triangle β€” Row Generation

Math/Recursion
280Fundamental

Hamming Distance β€” Generic Zip

Higher-Order Functions
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
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
303Intermediate

303: Collecting Iterator<Result<T>> into Result<Vec<T>>

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
320Intermediate

320: Fallible Iterators

Functional Programming
321Intermediate

321: async fn and .await Fundamentals

Functional Programming
322Advanced

322: The Future Trait and Poll

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
326Advanced

326: Capturing with async move

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
340Advanced

340: Async Trait Pattern

Functional Programming
341Intermediate

341: Buffered Stream β€” BufReader and BufWriter

Functional Programming
341Intermediate

341: MPSC Channel

Functional Programming
342Advanced

342: Arc<Mutex<T>> Pattern

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
351Intermediate

351: BTreeMap Ordered

Functional Programming
352Intermediate

352: BTreeSet Sorted

Functional Programming
353Intermediate

353: VecDeque Double-Ended Queue

Functional Programming
354Advanced

354: BinaryHeap Priority 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
362Intermediate

362: Trie Structure

Functional Programming
363Advanced

363: Arena Allocation

Functional Programming
364Advanced

364: Slab Allocator

Functional Programming
365Intermediate

365: Disjoint Set (Union-Find)

Functional Programming
366Advanced

366: Segment Tree

Functional Programming
367Advanced

367: Fenwick Tree (Binary Indexed Tree)

Functional Programming
368Advanced

368: Persistent Data Structures

Functional Programming
369Advanced

369: Clone-on-Write (Cow)

Functional Programming
370Intermediate

370: SmallVec Pattern

Functional Programming
371Intermediate

371: Circular Buffer (Ring Buffer)

Functional Programming
372Advanced

372: Skip List Pattern

Functional Programming
373Advanced

373: Custom B-Tree Implementation

Functional Programming
374Advanced

374: Radix Tree (Compressed Trie)

Functional Programming
375Advanced

375: LRU Cache

Functional Programming
376Advanced

376: Bloom Filter

Functional Programming
377Intermediate

377: Graph β€” Adjacency List

Functional Programming
378Intermediate

378: Graph β€” Adjacency Matrix

Functional Programming
379Intermediate

379: Directed Acyclic Graph (DAG) and Topological Sort

Functional Programming
380Intermediate

380: Weighted Graph and Dijkstra's Algorithm

Functional Programming
381Advanced

381: Blanket Implementations

Functional Programming
382Advanced

382: Associated Types (Advanced)

Functional Programming
383Advanced

383: Simulating Higher-Kinded Types with GATs

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
405Intermediate

405: Iterator Trait Deep Dive

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
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
416Advanced

416: Macro-Generated Builder Pattern

Functional Programming
417Fundamental

417: Vec-like Collection Macros

Functional Programming
418Fundamental

418: `stringify!` and `concat!` Macros

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
433Fundamental

433: Macro-Defined State Machines

Functional Programming
434Fundamental

434: Domain-Specific Languages with Macros

Functional Programming
435Fundamental

435: Lazy Static Pattern

Functional Programming
436Advanced

436: Newtype Derive Patterns

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
441Fundamental

441: Thread Basics β€” Spawn and Join

Functional Programming
442Fundamental

442: Scoped Threads β€” Borrowing Across Threads

Functional Programming
443Advanced

443: `Arc<Mutex<T>>` β€” Shared Mutable State

Functional Programming
444Advanced

444: `Arc<RwLock<T>>` β€” Multiple Readers, One Writer

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
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
458Advanced

458: Barrier Synchronization

Functional Programming
459Fundamental

459: Thread-Local Storage

Functional Programming
460Advanced

460: `Send` and `Sync` Bounds

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
467Fundamental

Epoch-Based Garbage Collection

Functional Programming
468Expert

Lock-Free Queue

Functional Programming
469Fundamental

Parallel Reduce

Functional Programming
470Fundamental

Concurrent BTree

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
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
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
538Advanced

Variance: Covariant, Contravariant, Invariant

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
543Intermediate

Lifetimes in dyn Trait

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
552Intermediate

Arena Allocation Pattern

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
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
593Fundamental

Interpreter Pattern

Functional Programming
594Advanced

Continuation-Passing Style (CPS)

Functional Programming
595Advanced

Trampoline Pattern

Functional Programming
596Expert

Church encoding rust

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
601Fundamental

Coproduct Types (Sum Types)

Functional Programming
602Fundamental

Advanced Product Types

Functional Programming
603Fundamental

Functor Laws

Functional Programming
604Expert

Monad Laws

Functional Programming
605Intermediate

Applicative Laws

Functional Programming
607Fundamental

Fixed-Point Types

Functional Programming
608Expert

Catamorphism

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
699Fundamental

Raw Pointer Basics

Functional Programming
700Advanced

Unsafe Blocks

Functional Programming
701Advanced

Unsafe Functions

Functional Programming
702Advanced

unsafe trait

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
712Fundamental

ffi string conversion

Functional Programming
713Fundamental

ffi repr c structs

Functional Programming
714Fundamental

ffi callbacks

Functional Programming
715Fundamental

ffi error codes

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
725Intermediate

Stack Allocation Patterns

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
730Fundamental

730-small-string-optimization β€” Small String Optimization

Functional Programming
731Fundamental

731-tiered-memory-strategy β€” Tiered Memory Strategy

Functional Programming
732Intermediate

732-benchmarking-harness β€” Benchmarking Harness

Functional Programming
733Fundamental

733-profile-guided-patterns β€” Profile-Guided Patterns

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
741Fundamental

741-parse-dont-validate β€” Parse Don't Validate

Functional Programming
742Advanced

742-type-witnesses β€” Type Witnesses

Functional Programming
743Fundamental

743-session-types β€” Session Types

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
751Fundamental

751-mock-trait-pattern β€” Mock Trait Pattern

Functional Programming
752Fundamental

752-test-doubles-taxonomy β€” Test Doubles Taxonomy

Functional Programming
753Intermediate

753-bench-harness-pattern β€” Benchmark Harness Pattern

Functional Programming
754Fundamental

754-testing-async-code β€” Testing Async Code

Functional Programming
755Fundamental

755-testing-error-paths β€” Testing Error Paths

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
759Fundamental

759-manual-serialize-trait β€” Manual Serialize Trait

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
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
766Fundamental

766-config-file-parsing β€” Config File Parsing

Functional Programming
767Fundamental

767-versioned-data-format β€” Versioned Data Format

Functional Programming
768Fundamental

768-zero-copy-deserialize β€” Zero-Copy Deserialize

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
773Fundamental

773-serde-attributes-concept β€” Serde Attributes Concept

Functional Programming
774Advanced

774-const-generics-basics β€” Const Generics Basics

Functional Programming
775Fundamental

775-const-array-size β€” Const Array Size

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
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
787Intermediate

787-edit-distance-levenshtein β€” Edit Distance (Levenshtein)

Functional Programming
788Intermediate

788-coin-change-dp β€” Coin Change

Functional Programming
789Intermediate

789-longest-increasing-subsequence β€” Longest Increasing Subsequence

Functional Programming
790Advanced

790-matrix-chain-multiplication β€” Matrix Chain Multiplication

Functional Programming
791Advanced

791-palindrome-partitioning β€” Palindrome Partitioning

Functional Programming
792Advanced

792-rod-cutting-dp β€” Rod Cutting Problem

Functional Programming
793Intermediate

793-minimum-path-sum β€” Minimum Path Sum

Functional Programming
794Intermediate

794-word-break-dp β€” Word Break

Functional Programming
795Advanced

795-subset-sum-dp β€” Subset Sum

Functional Programming
796Fundamental

796-counting-paths-dp β€” Counting Paths

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
814Intermediate

814-kmp-pattern-matching β€” KMP Pattern Matching

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
820Advanced

Manacher's Algorithm β€” Longest Palindromic Substring

Functional Programming
821Intermediate

Trie Autocomplete

Functional Programming
822Fundamental

Burrows-Wheeler Transform

Functional Programming
823Fundamental

Polynomial String Hashing

Functional Programming
824Intermediate

Sieve of Eratosthenes

Functional Programming
825Intermediate

Prime Factorization

Functional Programming
826Intermediate

GCD and LCM β€” Euclidean Algorithm

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
838Fundamental

Interval Tree β€” Stabbing Queries

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
843Advanced

Generic Memoization

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
850Fundamental

Functors Introduction

Functional Programming
852Intermediate

Applicative Functor Basics

Functional Programming
853Intermediate

Applicative Validation

Functional Programming
854Expert

Option Monad

Functional Programming
855Expert

Result Monad

Functional Programming
857Fundamental

FlatMap / Bind Chains

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
864Fundamental

Traverse with Result

Functional Programming
865Expert

Sequence Monadic

Functional Programming
866Fundamental

Foldable Trait

Functional Programming
867Fundamental

867-foldable-tree β€” Foldable Tree

Functional Programming
868Fundamental

868-traversable-tree β€” Traversable Tree

Functional Programming
869Expert

869-continuation-monad β€” Continuation Monad

Functional Programming
870Intermediate

870-trait-objects β€” Trait Objects (Dynamic Dispatch)

Functional Programming
871Intermediate

871-generic-bounds β€” Generic Bounds

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
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
887Intermediate

887-windows-chunks β€” Windows and Chunks

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
895Intermediate

895-move-semantics β€” Move Semantics

Functional Programming
896Intermediate

896-clone-copy β€” Clone and Copy Traits

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
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
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
925Intermediate

925-list-operations β€” List Operations

Functional Programming
926Intermediate

926-pattern-matching β€” Pattern Matching

Functional Programming
927Intermediate

927-option-result β€” Option and Result

Functional Programming
928Fundamental

928-reverse-list β€” Reverse List

Functional Programming
929Fundamental

929-palindrome-check β€” Palindrome Check

Functional Programming
930Fundamental

930-pangram-check β€” Pangram Check

Functional Programming
931Intermediate

931-records β€” Records and Functional Update

Functional Programming
932Intermediate

932-stack-module β€” Stack Module with Signature

Functional Programming
933Fundamental

933-map-functor β€” Map / Functor

Functional Programming
934Expert

934-church-numerals β€” Church Numerals

Functional Programming
935Fundamental

935-tree-map-fold β€” Tree Map and Fold

Functional Programming
936Fundamental

936-mutual-recursion β€” Mutual Recursion

Functional Programming
937Intermediate

937-tail-recursive-accumulator β€” Tail-Recursive Accumulator

Functional Programming
938Advanced

938-unfold β€” Unfold

Functional Programming
939Intermediate

939 Scan Left

Functional Programming
940Intermediate

940 Gcd Lcm

Functional Programming
941Expert

941 Identity Monad

Functional Programming
942Fundamental

942 Matrix Operations

Functional Programming
943Intermediate

943 Result Railway

Functional Programming
944Intermediate

944 Validated Type

Functional Programming
945Fundamental

945 Word Count

Functional Programming
946Expert

946 Catamorphism

Functional Programming
947Intermediate

947 Currying Partial

Functional Programming
948Intermediate

948 Merge Sort

Functional Programming
949Expert

949 Profunctor Intro

Functional Programming
950Fundamental

950 Sum Of Multiples

Functional Programming
951Intermediate

951 Series Sliding Window

Functional Programming
952Fundamental

952 Atbash Cipher

Functional Programming
953Intermediate

953 Poker Hand Evaluator

Functional Programming
954Intermediate

954 Perfect Numbers

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
960Fundamental

960 Key Value Store

Functional Programming
961Advanced

961 Lru Cache

Functional Programming
962Intermediate

962 Trie Map

Functional Programming
963Advanced

963 Bloom Filter

Functional Programming
964Fundamental

964 Union Find

Functional Programming
965Advanced

965 Segment Tree

Functional Programming
966Advanced

966 Fenwick Tree

Functional Programming
967Advanced

967 Priority Queue

Functional Programming
968Intermediate

968 Deque

Functional Programming
969Intermediate

969 Circular Buffer

Functional Programming
970Fundamental

970 Rope String

Functional Programming
971Advanced

971 Persistent List

Functional Programming
972Advanced

972 Persistent Tree

Functional Programming
973Advanced

973 Finger Tree

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
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
986Fundamental

986 Mutex Basics

Functional Programming
987Fundamental

987 Rwlock 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

Open Source Repos

About This Project

Functional Rust is a comprehensive collection of functional programming examples, translating OCaml idioms to idiomatic Rust. Each example includes:

  • ✅ Side-by-side OCaml and Rust code
  • ✅ Full explanations of every translation decision
  • ✅ Key differences in type systems and semantics
  • ✅ Learning outcomes and practical exercises

Follow along on LinkedIn for daily new examples.

Created by Umur Ozkul, CTO at High Tech Mind B.V. β€” 30+ years of systems programming in OCaml, Rust, and functional languages.