A humble suggestion to anyone coming up with a new language.
Please make it as familiar as possible.
For example, do you really need to come up with some new syntax for defining a function, or specifying types and returns?
If you want people to use your new language, reduce the cognitive load - do things the same as other languages and be different only where you must.
Every time you come up with some completely alien programming construct, you have set a barrier to learning. Coming up with a new language should, for the most part, be an exercise in copying the best of how other extremely popular languages do things, and on top of that build in the necessary differences that make your language special.
Also, less is more. For example, one of the reasons Rust is so complex and intimidating is it has six sublanguages https://gist.github.com/brendanzab/d41c3ae485d66c07178749eae...
the expression language
unsafe runtime language
safe runtime language
compile time language
the type language
the trait language
the macro language
the attribute language
Whereas Zig goes the other direction and attempts to make everything programmable in the one core language, even ditching macros entirely. https://ziglang.org/learn/overview/. In Zig you can write compile time code in the same language and same code base.I put forward these suggestions not as a language edxpert - I am far from it - instead I put them forward as a frustrated learner wanting to do new things and looking at new languages and thinking "shit, I already work with three of four languages plus any number of subtechnologies on a given system, I just don't have time/headspace to learn a programming language with six sub languages".