I agree - lots of wasted potential there. I wish they had implemented an Arduino plugin for the PRUs, as well as a library for both the PRU side and the Linux side for using shared memory with common patterns (FIFOs, etc.).
Something newbie-friendly like that would've made the Beaglebones way more popular, IMO.
Developing C on Linux is less than ideal?
I suspect you are making the wrong comparison. Using a PRU generally lets me skip an FPGA. That's huge. Now, my firmware team can do development in C on a Linux machine rather than Verilog/VHDL in some horrible vendor (Xilinx/Altera) toolset.
If you're programming a PRU, you need to know WHY you're programming a PRU. Otherwise, why wouldn't you just use the main processor?
One use case for C is communication with the CPU (remoteproc stuff). We commonly had one PRU handle CPU communication with trivial C code while another PRU on the same PRU subsystem was coded with assembly to handle real-time I/O.