Hi, Pure Data users/devs. I released VCV Prototype a few days ago which allows scripting languages to be used inside a module in VCV Rack. Currently only JavaScript is supported, but we hope to add about five more scripting backends eventually, maintained by developers who "adopt" each engine. Script writers add a process(block)
function, which is called to access each input, output, knob, switch, and RGB LEDs.
libpd (https://github.com/libpd/libpd) can be thought of as a scripting language backend, except instead of text files it loads Pure Data patches. If a libpd wrapper is added to VCV Prototype, Pure Data users can create patches with up to 6 inputs and 6 outputs and control it with knobs etc.
If any developers would like to adopt the libpd backend for VCV Prototype, you can run Pure Data patches inside VCV Rack. You can even edit the patch with Pure Data in another window, hit "save", and reload it in the VCV Prototype module. I've not sure how Pure Data patches work with regards to knobs and LEDs on VCV Prototype, but it might be possible. Let me know if anyone's interested in writing a LibpdEngine.cpp
file, or see https://github.com/VCVRack/VCV-Prototype#adding-a-script-engine for more details.
Source code: https://github.com/VCVRack/VCV-Prototype
VCV Library entry: https://vcvrack.com/plugins.html#VCV Prototype