A programming construct that waits for and dispatches events or messages in a program, continuously checking for tasks to execute and handling them in order. It enables non-blocking, asynchronous execution in single-threaded environments.
Combines 'event' from Latin 'eventus' meaning outcome or occurrence, with 'loop' referring to the continuous cycling behavior. The concept became central to GUI programming in the 1980s and later to JavaScript's asynchronous model.
The event loop is like a super-efficient waiter who never stops moving - they continuously check each table (task queue) for orders, serve them one at a time, and never get blocked waiting for the kitchen! This is how JavaScript can handle thousands of web requests without creating thousands of threads.
Complete word intelligence in one call. Free tier — 50 lookups/day.