No, your problem is just a SuperCollider syntax issue - it lies in what you've written here:
f(msg)
I think that you're hoping this "invokes" the function f
with msg
as an argument. However, SuperCollider's syntax isn't quite like that - it actually interprets that as being an equivalent way of calling msg.f()
, which is why it throws an error saying that msg
knows no f
message. Instead, you need to use the value
message on your Function:
f.value(msg)
I can't find a tutorial that spells this out right now, so instead here's a link to the Function helpfile.