| 1 | How were generators historically used to write asynchronous code before async/await existed? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Advanced |
| 2 | Can you use a for...of loop directly on a generator's return value? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Beginner |
| 3 | How do you implement an infinite sequence using a generator, and why is this safe? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Intermediate |
| 4 | What makes an object 'iterable' in JavaScript? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Beginner |
| 5 | How do you write a basic generator function? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Beginner |
| 6 | How does yield pause and resume execution, and what does it return to the caller? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Intermediate |
| 7 | How do you delegate from one generator to another using yield*? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Intermediate |
| 8 | How do you use generator.throw() and generator.return() to control a running generator externally? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Advanced |
| 9 | How would you implement a custom Symbol.iterator for a tree data structure to enable depth-first traversal with for...of? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Advanced |
| 10 | What's the performance and memory advantage of a generator-based lazy pipeline over building intermediate arrays with map/filter? JavaScript › Iterators & Generators | JavaScript | Iterators & Generators | Advanced |
| 11 | How do generators help implement memory efficient data processing pipelines, chaining multiple transformation steps together without ever loading an entire dataset into memory at once? PHP › Generators & Iterators | PHP | Generators & Iterators | Advanced |
| 12 | What are the limitations of PHP generators compared to regular arrays, particularly around rewinding and multiple iteration passes? PHP › Generators & Iterators | PHP | Generators & Iterators | Advanced |
| 13 | What is a generator in PHP, and how does the yield keyword let a function produce a sequence of values without building an entire array in memory at once? PHP › Generators & Iterators | PHP | Generators & Iterators | Beginner |
| 14 | What is the Iterator interface in PHP, and how does it relate to how a foreach loop actually works behind the scenes? PHP › Generators & Iterators | PHP | Generators & Iterators | Beginner |
| 15 | What is the relationship between generators and the iterator protocol? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Intermediate |
| 16 | What is the IteratorAggregate interface, and how does it provide a simpler alternative to implementing the full Iterator interface directly? PHP › Generators & Iterators | PHP | Generators & Iterators | Intermediate |
| 17 | How can a generator receive values sent into it during iteration using the send method, enabling two way communication with the calling code? PHP › Generators & Iterators | PHP | Generators & Iterators | Intermediate |
| 18 | How does yield from let a generator delegate part of its iteration to another generator or an array, and why is this useful? PHP › Generators & Iterators | PHP | Generators & Iterators | Intermediate |
| 19 | How can generators and iterators help reduce peak memory usage compared to building full lists? Python › Memory Management & Garbage Collection | Python | Memory Management & Garbage Collection | Advanced |
| 20 | What is an async iterator? JavaScript › Async Iterators & Streams | JavaScript | Async Iterators & Streams | Beginner |
| 21 | How do you write an async generator function? JavaScript › Async Iterators & Streams | JavaScript | Async Iterators & Streams | Intermediate |
| 22 | How do you implement a custom iterator by defining __iter__ and __next__? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Intermediate |
| 23 | What is a generator function, and how does 'yield' make it different from a regular function? Python › Comprehensions & Generators | Python | Comprehensions & Generators | Beginner |
| 24 | What is the difference between an iterable and an iterator in Python? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Beginner |
| 25 | What exception signals the end of iteration, and how does a for-loop use it internally? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Beginner |
| 26 | What does the built-in next() function's optional default argument do? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Beginner |
| 27 | How does the itertools module complement the iterator protocol? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Intermediate |
| 28 | What is the difference between iter(obj) and using obj directly in a for-loop, in terms of what Python calls internally? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Intermediate |
| 29 | How would you implement a custom async iterator class from scratch, without using an async generator function? Python › Async Generators & Async Context Managers | Python | Async Generators & Async Context Managers | Advanced |
| 30 | How does 'yield from' delegate iteration to a sub-generator, and what does it return as its own expression value? Python › Comprehensions & Generators | Python | Comprehensions & Generators | Advanced |
| 31 | What is the difference between __iter__ returning self versus returning a separate iterator object? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Advanced |
| 32 | How would you implement a lazy, chainable iterator pipeline (like filter-then-map) from scratch? Python › Iterators & the Iterator Protocol | Python | Iterators & the Iterator Protocol | Advanced |
| 33 | What does functools.reduce do, and why is it often discouraged in favor of loops? Python › functools & Functional Programming Tools | Python | functools & Functional Programming Tools | Intermediate |
| 34 | What is the practical difference between using functools.reduce and a plain for-loop for accumulation? Python › functools & Functional Programming Tools | Python | functools & Functional Programming Tools | Intermediate |
| 35 | Why can array holes (sparse arrays) behave unexpectedly with iteration methods? JavaScript › Arrays & Array Methods | JavaScript | Arrays & Array Methods | Advanced |
| 36 | What are functors and monads, at a practical level, and does JavaScript have native support for them? JavaScript › Functional Programming | JavaScript | Functional Programming | Advanced |
| 37 | What is an async generator, and how does 'for await...of' let you consume asynchronously produced data? Node.js › Async Patterns | Node.js | Async Patterns | Advanced |