Hi, today I ran into an issue again which I fear I might run into again: I used an argument name in a SynthDef that was already reserved by SC for usage with Pattern. The first time was when I used scale, today it was with lag.
These argument names worked fine when I just used a SynthDef, but the moment I control the SynthDef via a Pattern, strange things happen.
Please, is there is a list of keywords which should not be used as argument names? Or is there a best naming practice how to not run into such situations in the first place?
Risking to belabour a potentially moot point, but as two members reacted with answers about pattern/event keywords, am I correct in reasoning that there simply are no keywords in SC areas outside of pattern/event that could give odd results when used as arguments in a SynthDef?
To be formally correct: Whichever framework youâre using defines âreservedâ keywords.
If youâre using patterns + events, then youâre subject to defaults defined in the default event prototype (unless youâre using a different event prototype â I donât think anyone has defined an alternate event prototype, so you can fairly safely assume that the default event prototype applies â but it is in principle possible to declare a totally different event system, and when using it, the âreserved keywordsâ would be different).
If youâre using a framework other than patterns/events, then that framework decides what is reserved (e.g. JITLib reserves âoutâ and âgateâ for itself).
Oh Iâm sort of dumb, so I had âaâ set to the default event a = ().play. You need to play an event because that is the method which sets the parent, and those lines iterate through itâs keys and prints the key value pairs.