Non penso che ci sia una risposta giusta.
In generale, quando una lingua è relativamente giovane, c'è molta più libertà di fare cambiamenti relativamente grandi in tempi relativamente brevi. Non c'è una grande base di codice esistente da rompere, quindi le persone sono generalmente molto più aperte alla sperimentazione.
Man mano che il linguaggio invecchia, supponendo che entri in un utente abbastanza vasto per cui qualcuno possa davvero preoccuparsi, la base del codice esistente inizia a porre restrizioni più stringenti e più strette su quali modifiche possono essere apportate. Non solo c'è più codice che fa uso di più funzioni, quindi è più difficile indovinare quali cambiamenti potrebbero infrangere il codice, ma le aspettative delle persone cambiano.
Per esempio, supponiamo che ci fosse lo stesso numero di persone che scrivono Ruby e Fortran. Inoltre, supponiamo che ci fosse circa la stessa quantità di codice in entrambi. Direi che è molto probabile che un cambiamento che ha rotto esattamente la stessa percentuale di ciascuno (e in un modo che ha richiesto lo stesso lavoro per correggere) sarebbe un lotto più accettabile per gli utenti di Ruby rispetto agli utenti di Fortran come regola generale (almeno supponendo che lo vedessero come un miglioramento).
Penso che molto dipenda anche dalla percezione della lingua da parte delle persone. Le persone che scelgono una lingua perché è "all'avanguardia" hanno molte più probabilità di sopportare cambiamenti importanti che infrangono un sacco di codice esistente, se è quello che serve a mantenere è all'avanguardia.
Un altro fattore è la dimensione e l'aspettativa di vita dei progetti per i quali la lingua è destinata. Un linguaggio che si rivolge a progetti relativamente piccoli oa quelli che conosciamo in anticipo hanno una breve aspettativa di vita (ad esempio un'interfaccia utente web) può farla franca relativamente spesso, perché è improbabile che molte persone continuino a utilizzare lo stesso codice base per, diciamo, 10 anni in ogni modo. Un linguaggio (ad es., C ++ o Java) che si rivolge di più a progetti più grandi e di più lunga durata, che possono richiedere, per esempio, 5 anni per ottenere una versione iniziale, può essere in uso regolare (e sviluppo continuo) per tre o quattro decenni. un grande migliora la stabilità.