Why don't domain names allow spaces, ampersands or apostrophes?

If I type “barnes & noble.com” into my address bar, is it possible to make my browser redirect me to “bn.com”?

Right now, all I get is a search result (yahoo, google, etc) and then close it. Can’t they “trick” the DNS’s (or whatever is responsible) into thinking that spaces are allowed, and point me to a legitimate address?

Personally, I would love it if all the hyphenated, underscored and concatenated domain names and e-mail addresses would disappear from view. Maybe that’s just me.

bn.com” used as an example, “freds-garden-and-farm-services.com” also works. Or doesn’t.

Right now, all I get is a search result (yahoo, google, etc) and then close it. Can’t they “trick” the DNS’s (or whatever is responsible) into thinking that spaces are allowed, and point me to a legitimate address?

barnes & noble is an easy example where the browser might be able to guess what you mean (but then the browser would basically have to guess what you mean, and be equipped with some sort of artificial intelligence). Artificial intelligence is not all that intelligent yet, else the searches engines themselves would be all over it.

That’s why a browser requires proper URLs. If you don’t know that, then a search engine is your best bet.

freds-garden-and-farm-services.com

What should the browser do when you type “freds garden & farm services.com”, but there are multiple domains fitting that: freds-garden-and-farm-services.com, freds-farm-and-garden-services.com fredsgardenandfarmservices.com, freds.garden-services.com/farm etc? Which one should send you to?

GTLD domain names are regulated by ICANN and there has been some movement to take into account non european characters and alphabets. But the problem is legacy software and practices. If you change anything then you know it will not work everywhere or for everyone. At present the only real character you can use in a domain name is the hyphen (the - symbol).

You only have to look at all the effort that has gone into getting IPV6 up and running to realise that making big changes to the domain naming conventions just isn’t going to happen.

Ingenyes