I fully agree with the first half of your post, and not the second half.
It is unfair and unreasonable to declare someone "illegal" after years of accepting them into the community. We hire them, rent to them, let them buy cars, let them get insurance etc.
I look at this similar to adverse possession. You shouldn't accept your neighbor's fence line for decades, then after the person is accustomed to it try to claim they were wrong in the first place. We assisted them to set up their lives, then decided they are "illegal" and are now destroying them. Ok, let's be consistent at least. Destroy all the "illegal" businesses that hired them. Destroy all the "illegal" companies that sold them products "no doc" knowing they were undocumented. Why do we only use the "illegal" term for the person and not the rest of the system that also acted illegally and profited from them?