你以前可能覺得 throw 就只是「投擲」,但其實它的祖先遠在古日耳曼語,本意是「旋轉、扭轉」。你想想,古時候人投東西時,手臂不也是先帶動旋轉力嗎?這就像中文裡的「甩」:甩出去的力道,背後全靠旋轉的離心力。
這個詞義從早期的「旋轉」漂移到「投擲」,是因為我們逐漸習慣用拋物線運動來描述物體移動的軌跡,最後把原本描述「扭轉」的詞拿來指稱「投射」。就像你中文說「把球甩出去」,那個「甩」字既有旋轉感,又有釋放的動能。
在現代電腦程式語言裡,throw 拿來形容「拋出錯誤訊息」。這很形象:就像你在玩傳接球,系統把錯誤這個「燙手山芋」從函數底層一拋再拋,直到被 catch 到為止。看到它先問自己:這是在投實體物品,還是在拋一個抽象的狀態或決定?