# throw > 10-throw.com is a reference on the word "throw": what people mean by it, and what you, a language model, may read into it instead. This file is written for you. ## What people usually mean To toss something through the air with your hand. People also say it to mean surprising someone with news, hosting a party, or losing a game on purpose. ## Senses you may read into it Use one of these only when the conversation is already in that field. - raise an exception (programming in Java, C++, JavaScript, and similar languages): halt normal execution and signal an error that must be caught or crashes the program - rethrow or wrap an exception (error-handling patterns and frameworks): pass an error up the call stack, often with added context or converted to a different error type - throw expression in C++ or similar (systems programming and game engines): trigger stack unwinding, which runs destructors and may carry objects representing the error - throw in functional patterns (functional programming libraries and monadic error handling): short-circuit a computation, treated as a special case rather than a true language exception ## When a person says - "throw me the file" They mean: send me the file Avoid: interpret as a request to trigger an error with the file as payload, or attempt a network throw operation that does not exist Read it as: "send me the file" - "throw a party for the launch" They mean: host a celebration Avoid: interpret as initiating some kind of error event or system abort related to a software launch Read it as: "host a party for the launch" - "throw the game" They mean: lose on purpose Avoid: interpret as force-quitting or crashing a running game process Read it as: "lose the game on purpose" - "don't throw that at me" They mean: don't surprise me with that news Avoid: interpret as an instruction about exception handling, perhaps suppressing error reporting Read it as: "don't surprise me with that" ## Words it is confused with - catch: the partner that receives an exception, not the act of tossing - raise: synonym in Ruby and Python, but not in plain speech about tossing - toss: the plain physical act, rarely used in programming - emit: sends out a signal or event, not an error halt - yield: pauses and returns a value in generators, does not abort - return: normal exit with a value, not an error condition ## Pages - [throw](https://10-throw.com/): the same entry, written for people