There have been several projects over the last few years here at Art & Logic where we’ve used the excellent JUCE cross-platform C++ application framework. It’s pretty widely used in the pro audio world, since it has extensive support for all the kinds of things that you’re going to need there (audio I/O support, VST/AU plugin hosting, nice clean filter graph library). Even if you never deploy on more than one platform (and it targets not only Windows,OS X, and Linux, but also iOS and Android!), its ‘batteries included’ philosophy and clean, well-considered design make it a great choice for all kinds of applications, not just for audio/music.
I’ve been using it on a personal project, and when visiting the website looking for the most current version, I saw an announcement of a new tool called the Projucer. It’s not shipping yet, so there’s just a screencast video for now. If you’ve read any of my posts here you’ll see immediately why I found it interesting:
When I watched the Bret Victor video a few months ago, my reaction was “Wow, I’d love to have a tool like that, but it’d be impossible to get real-time feedback of code changes in a compiled language like C++”… Then I pondered a bit more, did some research on what was going on in the LLVM/Clang projects, and thought “…let’s have a go…”
This is very cool — not only on the fly recompilation of application code as it’s edited as text, but a bidirectional link so that modifying GUI elements by direct manipulation is reflected back into the source representation. I really can’t wait to get my hands on this thing.
Check it out: