Thank you for your answers!
I think we shouldn’t worry too much about ‘off topic’ on Development subjects. I have the feeling that this whole ‘SC3 vs SC4 - Class Library - Package Manager’ thing is encapsulating every specific topic we might discuss, so we can’t really act like it wasn’t there. And every time it pops out on a specific subject, that’s one more piece to the big puzzle we’re trying to solve.
Regarding the death of SC3, I’d like to disagree. I totally agree with the stagnating situation you point out, technical difficulties, and I can see you know way more than I do about such topics. But there’s people meeting to talk about this, either on this forum or on Jitsi, and they have concrete ideas to keep improving SC’s current state (QT6, IDE, Pitch Class, etc).
Those ain’t grandiose big changes that make the language revolve around itself, but they’re definitely pushing it forward. I was ‘born with Python3’, so I don’t know how things went during the transition, but I suppose that most of the improvement made to Python2 after it’s ‘death state’ got implicitly declared was still useful to implement Python3, whether it was only a cool function that could be ported to the new version, or some development that didn’t work but still got the developers to understand what they should avoid in Python3.
I’d like to propose a conjecture :
SuperCollider will always lack at least one major feature
it needs to be properly called SuperCollider
So I only started looking to the SC’s underlying architecture recently, and I’m not used to manipulate such complex concepts, I still have a naïve representation of the subject. So here’s a noob question.
It would seem, looking at jordan’s graphs, that it’s mostly a spaghetti code dependency issue?
Now let’s imagine that I take every class file, reference every methods the library is using, and copy all those methods inside every class file, then replace every occurrence of Class.method by this.method. Now, every class is a Quark and I brutally solved the issue?
What I see from the current answers is that backwards compatibility looks good, but is in fact slowing the development too much.
I’ve asked the ‘guarantee’ question, I don’t have an answer.
“We do not guarantee backwards compatibility for technical reasons. You should stick to the current version of SuperCollider you are using if you do not want to be impacted by version changes. The list of SuperCollider versions are available to download…”.