A friend asked me today: ”On IM, when you type ‘haha’, does that imply that you actually laughed?”
I answered immediately: no.
The “haha” and “hehe” strings imply that you got the joke, that you’re reading and comprehending the humor, that you believe the preceding statement is funny — but it doesn’t necessarily mean that you laughed.
Leading to the follow-up: ”What about ‘LOL’?”
Which, naturally, means that you did in fact laugh out loud. ”LOL” is a step up from a “hehe” or a “haha”. It ought to be a rare and coveted event. If you can eek out an LOL from someone, you’ve done well.
This led to a couple of brief asides about the hierarchy of online laughter:

Observe: First the “heh” is a modicum of laughter; the online equivalent of the wry smile or the eye-roll at some lame pun. ”Heh” says: I get it but you’ll need to do better. Then there are the siblings “haha” and “hehe”. Both are a bit ambiguous since either could be a polite gesture (I like you and that was funny but not LOL-worthy) or an indication of genuine amusement. Neither should be taken as offensive but neither should be interpreted as full-on actual laughter. Next are the bastard cousins “muwahaha” and “bwahaha”. ”Muwahaha” is the evil one — that’s reserved for when you’re laughing at someone’s expense. ”Bwahaha” is a more uncontrollable laughter — the online equivalent of shooting milk out your nose. But nothing can compare to the rate and coveted “LOL”: laughing-out-loud is when you have arrived and caused someone to physically make an ass out of him or herself by laughing at your disembodied wit.
Everything else is just derivative.