Wishbone: While you're right about the abbreviations, it doesn't mean that you can't transfer a file via HTTP, and that is actually how it is done as far as I know. When you click a download link, your browser sends a HTTP request to the server, and the file data is returned in the synchronous HTTP response.
rtcvb32: I haven't read or investigated any of the web technologies, but at a basic level it seems wrong to mix and confuse them. And yet it's pretty apparent they are more intermixed and confusing than ever.
It's just a matter of a technology that was originally made with a specific purpose in mind but which could do much more. Once it's doing much more, you don't go back and rename it, because everyone knows it by its original name.
Imagine going back in time 30 years and saying to someone "I'm just going to record a video on my phone". They'd look at you like you were a lunatic. And yet we still call them phones, because "combined-telephone-camera-and-multi-purpose-computer" is too cumbersome to say in everyday conversation.
The thing about the HTTP protocol is that the MIME header states which kind of data the request or response contains, and the client or server acts accordingly. As such, you shouldn't complain that it is being used for things it wasn't meant for, you should complain that the people who designed it named it stupidly.