Why build higher order concept Y when it's simply built on primitive X?
Why build the C programming language when C compilers simply generate assembly or machine code?
---
A sensible answer is that new abstractions make lower level primitives easier to manage.