 This video series will cover the essentials of the closure language. First, I'll give a brief overview of what's unique about closure and why you would want to use it. Then I'll explain what are called the Reader and the Evaluator, which account for the core syntax and semantics of the language, respectively. With that in place, we can look at some working, if trivial, code examples. Then we'll introduce a swath of the most important standard library functions, which concern the collection types. We'll follow that with a proper accounting of how closure's namespacing system works, and then we'll cover some miscellaneous syntactical and semantic conveniences. After that, we'll look at a rock-paper-scissors program and a tic-tac-toe program. Lastly, we'll explain how to create macros, how to create data types, and what closure calls its reference types, then ending with a walkthrough of a complete snake game program. Currently, the series does not cover some of closure's more recently added features, such as trans-ins, transducers, and channels, but these subjects may be covered in possible future updates. If you've watched some of my earlier videos, you may notice this is the first time I've included practical examples of non-trivial length. Be clear, though, that none of the non-practical material requires watching these practical examples, so you can skip the practical sections if you prefer.