I’m too really excited by this approach! Can’t wait to try it out!
I’ve spent quite some of my professional time worrying about how to build a library of DSP algorithms in a way that it’s instantly available (at least in a non-optimized way) on many different processor architectures. But given the sometimes very basic and “special” language support in most DSPs, especially ones that you’d use in consumer electronics, you end up implementing the same algorithms over and over or you get stuck on a certain product line.
Jules, can you roughly outline what needs to be done in order to port a SOUL runtime to a new DSP? And what does the DSP platform need to provide?
If it has a modern C++ toolchain (C++11 and above) it might be quite easy (just compile and maybe optimize some already-written code). But there are many DSPs that only have plain C compilers, or even worse, basically unusable C compilers accompanied by an obscure assembler dialect.
I wonder if SOUL can save my soul, too.