James,
I hope you believe me when I say I don't believe in making SuperCollider more complex for the sake of adding interesting language features. I don't program in SuperCollider much anymore. I've argued strongly for this idea because I wanted it to get a fair hearing, not because I'm interesting in making things easier for myself. I have motivation to improve the language here, so if you want to suggest something you think the community would make better use of, let me know! That would be much more satisfying for all of us than getting into a generic debate of pro-change / anti-change.
> Will there be a limit on the complexity of the expressions to be
> interpolated?
In the implementation strategy I suggested, no. But there could be.
> I'm not sure how one would design a compiler to forbid
> unclear use of string interpolation.
I'm of the opinion that they shouldn't at all. That is the realm of a linter.
> Also, will there be a policy on quotes-within-quotes?
Probably not, but there wouldn't be a good reason to interpolate string literals into a string literal except as part of a more complex _expression_.
> `"Upper limit = \(upper)"`, a trivial case, is easy to read, but when
> you scale the expressions up to higher degrees of complexity, legibility
> disappears and it becomes much harder to tell which parts of that _expression_
> will be evaluated and which are literal text.
Syntax highlighting.
> For fun, you could nest f"" strings.
Yeah definitely. Swift supports this and it's pretty amusing to play with.
-Brian