xenharmonic-devs / scale-workshop

Design and visualize microtonal scales and play them in your web browser. Export your scales for use with VST instruments. Convert Scala files to various tuning formats.
MIT License
72 stars 10 forks source link

SW3: Suggest sliders for undeclared variables #634

Open frostburn opened 3 months ago

frostburn commented 3 months ago

Online graphing calculator users know what this is about.

arseniiv commented 3 months ago

WHAT. 🔥 This can be very nice, esp. if one can control bounds of the slider. Though this also borders on the variables/symbols distinction if there won’t be a special construct to declare such bindings.

frostburn commented 3 months ago

WHAT. 🔥 This can be very nice, esp. if one can control bounds of the slider. Though this also borders on the variables/symbols distinction if there won’t be a special construct to declare such bindings.

SonicWeave is a compute-heavy language. Debounced sliders that cause recalculation of the whole scale should be relatively easy to implement, but realtime control bound stuff would require symbols and JIT compiled algebraic expressions to have any chance of working on real hardware.

frostburn commented 3 months ago

In connection to this I should also mention that the debounce code might need to be improved. I think there's a dead zone where a call currently being executed doesn't properly enque further calls.

frostburn commented 3 months ago

The slider values should be injected using extraBuiltins to prevent re-calculation of the AST.