OK, perhaps a bit more explanation is in order...
Background: DNS is a fairly simple thing - It's a system that maps hostnames ("www.foo.com") into IP addresses (192.168.222.35). Your computer actually communicates to other machines on the Internet via IP address, not it's hostname. Think of DNS as an Internet phone book - You look up someone's name in the phone book and it gives you back their phone number. You then use that number to contact them.
A hostname is just something easy for us to remember. When you punch in "www.foo.com" in your browser, your computer goes and looks it up on it's DNS name, finds it's IP address, connects to that address and does it's business.
"www" is just a acronym for "World Wide Web". It's just a convention to name web servers. There's nothing saying that you have to have it. There's lots of web servers out there that DON'T start with "www", like "search.yahoo.com".
Using the domain name as a hostname ("foo.com") is a bit different on the back end, but, for the most part, can be treated like any other name. It's not necessarily tied to the
www.foo.com, it can be something totally different.
So, it's really not a DNS problem - It's just someone who hasn't taken the time to aim "foo.com" to "www.foo.com" as a shortcut, or someone who is using "foo.com" for something other than web services.
I could go a lot deeper (i.e. host headers on web servers in hosting sites, etc.) but hopefully you get the idea.
- G