People have been writing Unicode supporting VB6 apps for decades now. There's a very popular project called VBCCR that provides reimplementations of all the VB6 UI controls with full Unicode support and additional features. It's not "a mess", it's standard for any VB6 code written by a decent programmer in the past 15+ years and works fine because under the hood it's UCS-2. So everyone now just uses xxxW APIs passing strings by direct pointer. And supporting extended characters is a standard 5 line rewrite of ChrW.
Now the backwards compatible successor being talked about for the new XYPlorer versions support Unicode everything from the ground up.
And since this is discussing twinBASIC now, the new version of the language, you've got all your additions. tB has native Unicode everywhere (hell, you can even make your function names and variables emojis), generics, type inference, attributes, declaring module-level stuff anywhere, not to mention all the things you listed that were supported to begin with like enums and for loops and dozens of others like delegates for calling by pointer, defining interfaces/coclasses in the project, multithreading support, 64bit support, etc. The language is now no longer frozen in time with a backwards compatible successor with tons of new language features and cross platform support one of the major future plans.
People's knowledge of VB6 seems to be also "frozen in time", unaware of what modern use of it is really like.
Now the backwards compatible successor being talked about for the new XYPlorer versions support Unicode everything from the ground up.
And since this is discussing twinBASIC now, the new version of the language, you've got all your additions. tB has native Unicode everywhere (hell, you can even make your function names and variables emojis), generics, type inference, attributes, declaring module-level stuff anywhere, not to mention all the things you listed that were supported to begin with like enums and for loops and dozens of others like delegates for calling by pointer, defining interfaces/coclasses in the project, multithreading support, 64bit support, etc. The language is now no longer frozen in time with a backwards compatible successor with tons of new language features and cross platform support one of the major future plans.
People's knowledge of VB6 seems to be also "frozen in time", unaware of what modern use of it is really like.