What is "Implicit Knowledge"? Essentially it's stuff that everyone knows, but no one has written down. Usually it's something that people have worked out through their own experiences.
This sort of knowledge is common in life - but is fatal in computing and design. Take the following tweet I received.
The complaint was that #tfm&a should be rendered as #tfm&a not #tfm&a.
Everyone knows that's how hashtags work!
On Twitter's website, find the page which discusses hashtag syntax. Find where they explain how they should be styled.
And thus implicit knowledge is born. Dabr only looks at letters and numbers in a hashtag. It assumes that any other character is the end of the tag.
Without official guidance - implicit knowledge develops.
Has Dabr Got It Wrong?
No. I don't think so. Take a look at how Twitter on the web renders hashtags...
...and on the mobile.
So Where Does Render The Full Tag?
Several applications don't render tags in the same way as Twitter. Take a look at SocialScope
I'll upload more screenshots if I find examples of "badly behaved" hashtags. Please let me know if you find any.
What Does Twitter Say?
Twitter has one page devoted to hashtags. It is a support page for hashtags. This explains to people what hashtags are. There's no detail on valid characters, maximum length, or any of the things which might be useful for a developer or designer.
David Dorward has pointed out that there is an official resource. On the Twitter Engineering blog - which isn't linked to from the developer site - there is a page discussing hashtags and how to validate them. You'll notice that they are rather circumspect on what should constitute a hashtag.
Standards and guidelines allow developers to create compatible applications.
Without explicit recommendations, developers will diverge as widely as possible. Twitter - and everyone with an interest in compatibility and usability - needs to ensure that the knowledge they impart is explicit.
Letting people make it up as they go along leads to confusion.