> So from an application programmers perspective machine code is as low as it gets and C maps really well to machine code so C is a low level language.
C only "maps really well" to PDP-11 style machine code. If you want SIMD, parallel algorithms, heterogeneous programming, memory hierarchies/domains, etc then ISO C is completely useless.