This is the top-level map for all CS notes. The garden is split into three domains, each with its own concept map. Click through to explore a domain, or use the sidebar to browse individual notes directly.
Domains
Data Structures & Algorithms How to represent data and design algorithms that scale. Covers arrays, linked lists, trees, graphs, heaps, hash tables, sorting, searching, dynamic programming, greedy strategies, and complexity analysis.
Programming Language Concepts How languages are defined and evaluated. Covers grammars and parsing, lambda calculus, operational semantics, type systems, effects, garbage collection, concurrency, and module systems.
Languages Language-specific notes - implementations, idioms, and design patterns tied to individual languages. Currently covers Racket, with more to come.