| ▲ | HexDecOctBin 6 hours ago | |||||||
Blow's claim was that C++ sucks and that an alternative better suited for gamedev should be created. It's not like he's had good things to say about LLVM. | ||||||||
| ▲ | torginus 2 hours ago | parent | next [-] | |||||||
My understanding is that thinks C++ sucks period (an uncontroversial opinion even among C++ devs). His reasoning was that C was a pretty minimalist language introducing structured control flow and little else, yet it's flexibility and neutrality has allowed people to explore lots of approaches. C++ on the other hand is highly opinionated, and a lot of its opinions are considered wrong or at least controversial (template metaprogramming, RAII, exceptions, diamond inheritance, just to name a few). A lot of the C++ community doesn't use these features (for example Chrome, LLVM have exceptions turned off). Jai on the other hand goes heavily into typed AST macros (along with a reasonably powerful type inference enigne), a very powerful extension of the language, that this language has gotten right - the feeling you get when looking at the docs is 'well, duh it obviously has to be done like this' - considering how long it took devs to arrive at this system suggests this is far less an obvious task than it looks like. Other than this, what the language offers over C isn't much - it shares Odin's 'context' idea that you can inject an allocator or logger function and have your methods use that - which is kind of the point imo. Blow, as outspoken and controversial a figure he is; seems to have designed a pretty unopiniated language - something designed for master programmers (like ones he has worked with in the games industry, who worked mostly in C) to express themselves, rather than a set of 'correct' opinions the language imposes on you. Imo it's a shame it took so long to release, as I'm p. sure Jai would've been much more influential 2-3 decades ago or more, and would've had a good chance to dethrone C++. | ||||||||
| ▲ | Twey 6 hours ago | parent | prev [-] | |||||||
LLVM doesn't have to be great for its existence to make PL dev a lot easier. Codegen used to be a real pain. The interesting part to me was always that he didn't justify Jai very much. He didn't assert that anybody else would want to use it, or that it would be universally better than C++. His claim was that he didn't need to: building a language is now so quick that he can make a language just for him, just because he feels like it. Everybody can have their own language frontend. | ||||||||
| ||||||||