5 ms·
> I'm so done with C++. But what to use instead? Especially in an industry like game engine development, where C++ is basically all there is (and almost all th
by pansa2 5y ago
> I'm so done with C++.
But what to use instead? Especially in an industry like game engine development, where C++ is basically all there is (and almost all there’s ever been)?
Are we forever going to be stuck with every company trying to reduce complexity by defining their own custom subset of C++?
- nynx 5y agoThe main alternative is likely rust.
- criddell 5y agoAre you saying that for game engine development, Rust is the second most popular option?
- SavantIdiot 5y agoI didn't say "You can't use it," I said "I" am done with it. Have fun! Write some cool games!
- pansa2 5y agoThanks for the encouragement, it’s appreciated.
- fullstop 5y agoSomeone is going to say Rust, and I might agree with them at some point in the future. I periodically check https://www.areweguiyet.com/ https://www.areweguiyet.com/ to see the state of things, but C++ is still king here. I cut my teeth on C++ but was then employed to write code in C. After almost two decades of doing this, C++ looks vastly different to what I remember from 2001 and kind of ugly to me. I'm sure, however, if I had stuck with C++ for the last twenty years it would feel like home.
- jerf 5y agoThe places where you must use C++ are a dwindling niche. Large niches in their own right, certainly, but niches. Once you leave those niches there is an explosion of possibilities. I'm coming up on year 25 of my career and I haven't touched C++ since school, if one can indeed call what is covered in school C++. Especially nowadays. And C and Java I've barely touched. I certainly couldn't put them on my resume with a straight face. I say this because you kind of sound like you're making some sort of plaintive plea, as if C++ is somehow the only viable option in the world and who could even dream of stepping outside of it? And I'm telling you that while that may be true in an ever-decreasing set of niches, it is not true in general anymore and hasn't been for a long time.
- swalls 5y agoin the future, I think Jai looks pretty good, as a language designed for game dev, considering they're basically battle testing it by shipping a large 3d game in it... if the compiler ever gets released. I think 7 years of streamed development from Jonathan Blow?
- dahart 5y ago> Are we forever going to be stuck with every company trying to reduce complexity by defining their own custom subset of C++? Yes, probably? In 30 years of professional coding and a decade of game engine development, I’ve never seen that not be the case, all the companies I’ve been at and all the companies I know about limit their C++ to a subset to try to control complexity. I’m curious if you’re suggesting it would be better to increase complexity by allowing all of C++? There are definitely features I don’t trust everyone with. Complexity combined with engineer hubris is one of the big problems with C++. While working in games, I witnessed many people overengineering and being too clever by half, and costing the team time and money. One of the most memorable bugs I ever tracked down while working in games was a release-build only crash where a programmer had tried to get fancy with a copy constructor and bungled it unknowingly. We had a team of 10 people working over a weekend trying to catch it and I had to write a custom debugger to trap the call stack. The cost of his trickery was easily in the several tens of thousands of dollars at least. It only takes that happening a few times before you realize C++ is a foot-gun in many (most? all?) hands.
- pansa2 5y ago> I’m curious if you’re suggesting it would be better to increase complexity by allowing all of C++? No, definitely not. I’m wondering if there might be a language on the horizon that’s suitable for game engine development but which is substantially less complex than C++. Or, if not, is there an effort to rally round a particular subset of C++ instead of everyone defining their own? In your experience, have the C++ subsets used in different companies been very similar, or quite different?
- TuringTest 5y ago> No, definitely not. I’m wondering if there might be a language on the horizon that’s suitable for game engine development but which is substantially less complex than C++. Or, if not, is there an effort to rally round a particular subset of C++ instead of everyone defining their own? If it doesn't exist, it should be created and called --C. (C-- is already taken) https://en.wikipedia.org/wiki/C-- https://en.wikipedia.org/wiki/C--
- professoretc 5y ago> Are we forever going to be stuck with every company trying to reduce complexity by defining their own custom subset of C++? The problem with doing this is the same as with the idea that one "90% of people only use 10% of Excel's features" so we should be able to make a simpler Excel and capture 90% of the market: all those people use a different 10% subset. It's the same with C++; everyone wants a "simpler" language, but no one agrees on what should be kept and what should be thrown out. C++ is the language that results from putting together everything that everyone needs (and then dealing with the resulting conflicts and contradictions).