Why are exclamation marks always a space away from the end of the sentence?
And it's not just exclamation marks. From French.about.com: "In French, a space is required both before and after all two- (or more) part punctuation marks and symbols, including : ; « » ! ? % $ #" http://french.about.com/library/writing/bl-punctuation.htm
When typesetting text using metal type, there are three standard space widths available, known as "el", "en" and "em"-spaces, corresponding roughly to the widths of the letters with those names in a proportional font. A good typesetter would use an "el"-space between a word and the following puctuation mark for improved legibility
e.g. " I'll be ill ! ", rather than a cramped: "I'll be ill!".
With the widespread introduction of mechanical typewriters in the early 20th Century, these typesetting conventions were compromised by the fixed pitch limitation of the typewriter carriage movement. French and English typists were trained to different rules; the French retained the (now much larger) space before a punctuation mark, but only a single space between sentences, whereas English typists abandoned the space, but used two spaces between sentences. (It's not surprising that these differences evolved and persisted - it's not easy to switch between the US/UK QWERTY and the French AZERTY keyboard layouts, let alone any language barriers to overcome.)
As typesetters increasingly worked from typewritten manuscripts, they began to copy the larger space convention introduced by that imperfect typewriter mechanism and it seems to have remained stuck that way with the introduction of computers.
So it's really about the available technology and evolving practice. In fact, the space before an explanation or question mark is now considered optional. You will see both in French books. The only punctuation that needs to be offset by spaces both before and after is the colon [ : ]