> How do you allow people to solve new problems and explore new patterns and paradigms in a language without encouraging them to create a series of incompatible forks
Maybe through many tiny DSLs on top of a small and stable core language. People seem to be ok with DSLs, but not so much with constantly changing language and growing feature set.