Since 2015 i am following jonathan blow´s stream about making a programming language for games called "JAI".
I think it has a lot of potential and it may suit even non-game related programs.
The syntax is very clean and the language/compiler has great features like:
- Compile time execution
- Support for SOA in structures
- "defer" for releasing memory when out of scope (in reverse order)
- No need for any external make-tools, because using compile time execution the application can build itself
- "Using" keyword for accessing members from a instance directly (Similar to the "with" keyword from object pascal, but with more flexibility and without the need for enclosing scope)
- No need for any header files
- Good scope handling
- Built-in type information for almost any type for run and compile time
- Code generation
- Support for optional type inference, even for member fields
- Manually uninitialized (--- keyword)
- No garbage collection, full control over memory
- Very fast compile time
- Polymorphism: ad-hoc, parametric and subtyping (Subtyping is still experimental) + stuff i have seen before
- Multiple return values (automatic tuples)
- Many more
Unfortunatly its not out yet, but its on a good way.
What do you think about that? I personally want it right now - so i can drop C/C++ entirely.
If you want more details, see this inofficial documentation:
https://github.com/BSVino/JaiPrimer/blob/master/JaiPrimer.md