If I were to name one thing that makes modern programming languages great, I'd pick dynamic memory allocator (often interfaced via malloc/free functions). Imagine yourself keeping track of memory allocations, drowning in seemingly random addresses, and handling the fragmentation manually... Madness to say, at least.
Power consumption undoubtedly is one of the most important factors we look at today. Whether it's your smartphone, tablet, laptop, or machine in the datacenter, the goal is the same. You want to get the best possible performance for the lowest power cost.
In previous articles, such as Kernel or ISA, we saw how complicated interacting with Epiphany chip could be. A whole bunch of registers, memory banks, and funky addressing scheme. It's a lot to know, for someone who just wants to run a "hello world" program... If only we had some C library that would hide all this complex logic from us?!
Making use of hardware is much harder than owning it, especially when we speak about uniquely designed SBCs such as Parallella. Why? Because problems that can be solved best with parallel computing are hard...