August 2014
Intermediate to advanced
120 pages
2h 45m
English
| Acknowledgments |
| Introduction |
| Why Clojure? |
| Why Macros? |
| Metaprogramming in Non-Lisps |
| Who Is This Book For? |
| What’s in This Book? |
| How to Read This Book |
| Online Resources |
| 1. | Build a Solid Foundation |
| Code Is Data |
| Transforming Code |
| Evaluating Your First Macro |
| Macroexpansion |
| 2. | Advance Your Macro Techniques |
| Syntax-Quoting and Unquoting |
| Approaching Hygiene with the Gensym |
| Secret Macro Voodoo |
| 3. | Use Your Powers Wisely |
| Macros Aren’t Values |
| Macros Can Be Contagious |
| Macros Can Be Tricky to Get Right |
| 4. | Evaluate Code in Context |
| Dynamic Bindings |
| Evaluating (or Not) in Time and Place |
| Rescuing Errors |
| Cleaning Up Resources |
| 5. | Speed Up Your Systems |
| Benchmarking Your Code |
| Hiding Performance Optimizations |
| Moving Execution to Compile Time |
| 6. | Build APIs That Say Just What They Mean ... |
Read now
Unlock full access