Technical aspects aside and if you consider at first the end user perspective, you must have the www working AND the non-www must lead to the www page as well.
When orally exchanging a link, people tend to pronounce the non-www.
Go to example dot com to check this or that.
Even if the www is implied, it is omitted in a conversation. Then at the receiver end, if the user is not IT educated, he will simply retype "example.com" and expect to see the website.
And now is the crucial part: if you use www to set up your example.com domain, then make sure that the no-www will also arrive there. Otherwise, end-users won't be pleased and they matter more to your site than a www or no-www rule. ;)
On a personal level, I use the www and the non-www redirect is directly configured in the DNS, not as a virtual host.