In this case as in many others, it is not the act itself that determines what it is (charity or socialism), but the motivation behind the act. Socialism makes giving your possessions to the poor compulsory, a requirement. Charity (an old English word for love) means it is done freely and out of love. Both look the same on the surface, but they are two very different things.