Amazing that this question even gets asked. I am astounded that this even is a question.
If we do that, we have to ask what the difference is between a citizen and a non-citizen. If a non-citizen can vote, can get medical care, can put their children in our schools, can use all of our public facilities; then why would they ever bother becoming a U.S. citizen?
Another issue to bear in mind on this subject is the political implications, especially in regard to illegal aliens. From what I have been able to determine, the great majority of illegal aliens coming in from Mexico would vote Democrat if they could; after all, they are all about getting access to our medical care and schools, and other such benefits for free. This, of course, is why liberals / Democrats want open borders, no ID required to vote, and amnesty.
Democrats and liberals don’t actually give a hoot about the illegals; they just want to maintain their political control.
There already exists a legal procedure by which an immigrant can become a citizen. It’s worked for two hundred years; let them use it, if they want to be a citizen. This process demonstrates several things: an earnest desire to be a citizen; an investment of time, energy, and money towards that goal; persistence; and they have to swear allegiance to our country. They also have to demonstrate some knowledge of our history. I don’t think those things are unreasonable requirements for a candidate for citizenship in the United States.
Only U.S. citizens should be allowed to vote. Period. Full Stop, end of story.