Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
based on this experiment I rewrote the webaudio package, with a simpler yet already more powerful api.
Changes:
I also migrated the existing 3 web audio api tunes to the new api
finally, I also added a little trick to the params: it is now possible to wrap a primitive pattern by calling the param method without arguments:
n("0 1 2 3".add(2)).s('sawtooth')
==="0 1 2 3".add(2).n().s('sawtooth')
this allows writing patterns in a more flat manner if desired.