A function that can pause its execution at specific points and later resume from where it left off, allowing for cooperative multitasking. Coroutines enable efficient handling of asynchronous operations without the overhead of full threads.
Coined by Melvin Conway in 1958, combining 'co-' (together) with 'routine' (from French 'route'). The term describes functions that work cooperatively, yielding control to each other rather than running to completion like regular subroutines.
Coroutines are like having a conversation where people take turns speaking - each person can pause mid-sentence, let someone else talk, and then pick up exactly where they left off. It's much more efficient than everyone shouting at once!
Complete word intelligence in one call. Free tier — 50 lookups/day.