You make a reasonable point, but I think there is value in making a distinction because there is already an exception handling mechanism in our (Xcode) ecosystem, perhaps two, if you count the Obj-C and C++ exception mechanisms separately, and Swift is unaware of both of them.
I think there are three key differences between Swift error handling and exceptions in the other languages:
1. In Swift, 'throw' is a transfer of control to the calling function, similar a 'return'. Elsewhere, it's a transfer of control to somewhere else in the stack.
2. In the other languages, a function that isn't exception-aware can have a transfer of control across it (from below it to above it). In Swift, a non-exception-aware function blocks any error handling control transfer.
3. Swift has no system (program failure) exceptions, such as "invalid argument" or "nil pointer" that are fed into the error handling mechanism. Those sorts of failures immediately and correctly cause a crash. Actual errors appear only by API contract between a caller and a callee.
These distinctions are subtle, but they're non-trivial. If you don't see any signficant difference, then OK, but then you're also committed to calling Obj-C's '(NSError**) outError' pattern "exception handling", just with really verbose syntax.