How old is old enough? An 18-year-old can vote, sign a contract, be tried as an adult in a court of law, serve in the military and risk his/her life for their country, serve on a local school board, and engage in hazardous occupations.
Why should they not be able to purchase tobacco, purchase alcohol, and carry a firearm like any adult over 21? Certainly, they must be considered mature enough to be shot at and to defend themselves in the military. If they are old enough to die for their country, they should be afforded all the other rights that come with being an adult.