Mastering Tova
Welcome to the hands-on path to Tova mastery. This isn't a reference manual — it's a guided journey. Each chapter builds on the last, teaches through real problems, and ends with challenges that cement what you've learned.
Who This Is For
You should be comfortable with at least one programming language. You don't need to know JavaScript, though it helps. If you've never programmed before, start with the Getting Started guide first.
How to Use This Tutorial
Work through the chapters in order. Each one introduces concepts that later chapters depend on. Type the code yourself — don't just read it. Every chapter has interactive playground links so you can experiment immediately.
Do the exercises. Reading code is not the same as writing code. The exercises are designed to stretch your understanding just beyond what was taught, which is where real learning happens.
Build the projects. Each chapter includes a hands-on project. The capstone project in Chapter 12 ties the core language together, while later parts apply those skills to real application development.
The Path
Part 1: Foundations
| Chapter | What You'll Build | What You'll Learn |
|---|---|---|
| 1. Thinking in Tova | Temperature converter | Values, expressions, immutability, control flow, guard clauses, the Tova mindset |
| 2. Functions That Shine | Math toolkit | All function forms, closures, recursion, generics, decorators, generators |
| 3. Mastering Collections | Word frequency counter | Arrays, objects, maps, tuples, comprehensions, tables, lazy sequences |
| 4. String Craft | Template engine | Interpolation, string methods, text processing, formatting |
Part 2: Power Features
| Chapter | What You'll Build | What You'll Learn |
|---|---|---|
| 5. Pattern Matching Power | Command parser | All pattern types, guards, exhaustiveness, real-world dispatch |
| 6. Designing with Types | Shape calculator | Custom types, ADTs, generics, interfaces, traits, impl blocks, type-driven design |
| 7. Fearless Error Handling | File config parser | Result, Option, chaining, composition, recovery strategies |
| 8. Pipes and Transformations | Data pipeline | Pipe operator, functional composition, data transformation |
Part 3: Advanced Techniques
| Chapter | What You'll Build | What You'll Learn |
|---|---|---|
| 9. Modules and Architecture | Multi-file project | Imports, exports, project structure, code organization |
| 10. Async Programming | Parallel fetcher | Async/await, channels, concurrent blocks, select, structured concurrency |
| 11. Performance Secrets | Number cruncher | @wasm, @fast, typed arrays, benchmarking, optimization |
| 12. Capstone: Text Analyzer | Complete CLI tool | Everything combined into one real, polished project |
Part 4: Deeper Mastery
| Chapter | What You'll Build | What You'll Learn |
|---|---|---|
| 13. Functional Programming | Validation pipeline | compose, curry, partial, memoize, debounce, throttle, once, negate, flip |
| 14. Standard Library Mastery | Log analyzer | Regex, date/time, validation, encoding, JSON, URLs, advanced collections, terminal output |
Part 5: Building Applications
| Chapter | What You'll Build | What You'll Learn |
|---|---|---|
| 15. I/O and System | File processor | File I/O, paths, system commands, environment, scripting |
| 16. Testing | Test suite | Test blocks, assertions, Result/Option testing, test organization |
| 17. Server Development | REST API | Server block, routes, middleware, WebSocket, SSE, database |
| 18. JSX and Reactivity | Todo app | Browser block, JSX, state, computed, effects, components, stores |
| 19. Full-Stack Applications | Full-stack app | Shared blocks, security, RPC bridge, deployment |
| 20. CLI and Edge Computing | CLI tool & edge worker | CLI block, edge block, serverless patterns |
Conventions Used
Throughout this tutorial:
- Bold terms introduce new concepts
::: tipboxes share practical wisdom from experienced Tova developers::: warningboxes flag common mistakes- "Try It" sections are interactive — click to open in the playground
- "Exercise" sections are for you to solve on your own
- "Challenge" sections at the end of each chapter push you further
Ready? Let's go. Start Chapter 1 →