This is because the tax system actually has 2 conflicting uses: (i) collect revenue for the gov't and (ii) create incentives/disincentives that are meant to push taxpayers in ways that are deemed beneficial, be it to the economy or to certain policy like environment, housing, etc.
If you drop (ii) you can end up with an extremely simple tax code as most of the tax code complexities deal with those incentives/disincentives.
So the question is: to what extent can you do away with (ii), or more generally with tax code complexity?