I learned today that the name "Zacchaeus" means 'clean.' How fitting, then, that after an encounter with Jesus not only does Zacchaeus become clean we all can become clean. I always find it interesting when the comment is made that Jesus ate with sinners, tax collectors, and prostitutes, so we as a Church should welcome any and all manner of people who are sinners. But what is forgotten is that after that encounter with Jesus, those who accept him, like Zacchaeus did, are changed; unlike the rich young man who left Jesus because the price was too high for him to pay.
So, yes, we should welcome the sinner and pray that the encounter changes them to be faithful and true to the teachings we hold dear; but if the choice is to continue in the sin, then they are not allowing the encounter with Jesus to change them.