better toString for purity effects