• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.
  • We have made minor adjustments to how the search bar works on ResetEra. You can read about the changes here.

freakybj

Member
Oct 26, 2017
1,428
Interesting article from gameindustry.biz about how Jonathan Blow is developing his own programming language Jai as an alternative to C++ for simplified game development.

The main flaw with C++, in Blow's opinion, is that it's a fiendishly complex and layered ecosystem that has becoming increasingly convoluted in its effort to solve different problems; the more layers, the higher the stack, the more wobbly it becomes, and the harder it is to understand.

With Jai, Blow hopes to achieve three things: improve the quality of life for the programmer because "we shouldn't be miserable like many of us are"; simplify the systems; and increase expressive power by allowing programmers to build a large amount of functionality with a small amount of code.

Currently, Jai boasts an improved productivity of around 15 per cent, but Blow believes that, given time, it could be anywhere between 50 and 80 per cent.

A closed beta should be out by the end of the year.
 

TheJollyCorner

The Fallen
Nov 7, 2017
9,475
This man is an actual android... isn't he?



(Some of those puzzles in The Witness made me feel like an actual caveman. Damn you, Blow. :D)
 

Kaguya

Member
Jun 19, 2018
6,408
He have been doing this way before the Witness came out(thought he used it in the Witness!), is it not ready yet?

Edit: oh it's entering beta soon.
 

Kyuur

Member
Oct 28, 2017
2,535
Canada
I'm not sure how you can measure boosted productivity, given the wealth of C++ resources to accomplish something. Maybe if it just means specifically for Jonathon himself since he's obviously going to be intimately familiar with his language?

Article doesn't really say anything of substance either. If I had a quarter for every time someone thought their new language / development environment was going to solve "the problem" with existing solutions.
 

AxeVince

Member
Oct 26, 2017
580
Wasn't that already the case for the Witness ? I recall him doing twitch streams about his debugger and creating the language (though it could have been just after The Witness)
 

Deleted member 5593

User requested account closure
Banned
Oct 25, 2017
2,635
I'm nowhere near his level of knowledge but this looks like a case of:

standards.png
 

Ladioss

Banned
Oct 29, 2017
847
But who use C/C++ nowadays in the game industry, save for the engine and/or framework coders ?
 

Alek

Games User Researcher
Verified
Oct 28, 2017
8,471
He's been doing this for quite some time, this isn't new news. I guess the beta is?

I don't have a good understanding of this stuff unfortunately, so listening to Blow talk about it doesn't mean much to me. A couple of industry friends of mine have strong criticisms of the philosophy behind his programming language though. Those criticisms aren't uncommon either.

Here's an example: https://www.gamedev.net/forums/topic/692231-what-do-you-think-about-jai/
 

hobblygobbly

Member
Oct 25, 2017
7,573
NORDFRIESLAND, DEUTSCHLAND
Yeah I've been following it from the start, I enjoy his compiler talks, can't wait to get my hands on it when it hits public beta.

He (and quite a few others) are 100% right that there needs to be a replacement for C++ particular regarding game development, unfortunately a language like Rust while well designed and having a very good compiler for a systems language is way too resistant for the workflow nature regarding game development, but great for mission critical systems (reduction of bugs, due to its constraints/enforcement - but these are not great for game development).

C++ is a mess even though it has some nice features (I write C++ but avoid the trash of OOP), but it's time to start ushering in a new era, because C++ is not going any where besides downhill with how ridiculous the community and committee is.

I guess he wants to make money off this and we cannot expect a GitHub repo
Nope, he doesn't, I mean no one makes money on a language, only commercial proprietary compilers for languages really can make money off them, like Intel's C++ compiler
 

MrChocolate

The Fallen
Oct 27, 2017
1,414
I just want something easy to use (but hard to master) that doesn't suck the soul of my i5. Stencyl is the most amazing engine that I have seen, but I read that is not very optimized :(
 

ParsnipForest

Member
Oct 27, 2017
571
Australia
I suggest searching out his YT/Twitch accounts as he has hours-long videos/rants explaining precisely why C++ sucks for games and how he's trying to make something less bloated.
 

no1

Attempted to circumvent ban with alt account
Banned
Apr 27, 2018
954
That's pretty awesome .
 

DSP

Member
Oct 25, 2017
5,120
most of "game programming" is scripting and you don't do that in c++. Lua or python are more appropriate. C++ is for building the framework. You don't need to know C++ to make a game in UE4 for example with Blueprints.
 

BAW

Member
Oct 27, 2017
1,940
This is not CODING TO THE METAL mr. Blow, please keep your kiddie stuff away from us hardcore crowd thanks
 

Harlequin

Banned
Oct 27, 2017
1,614
Reminds me of Skookum Script (though that's a game dev specific scripting language, not a programming language).

In any case, good for him, I guess?
 

GroundCombo

Member
Oct 27, 2017
203
I've been catching up on his progress every now and then. Jai is a pretty neat language with some really nice game-oriented features and blindingly fast compilation times. It is also extremely pragmatic, performance-oriented, straightforward and devoid of any academic baggage, which I consider a plus. The problem is of course that it takes time for language/library ecosystems to grow and mature; he's going to release a simple game engine with the language, but it is definitely not going to be for everybody.

Jonathan Blow also has the luxury of spending time and resources for writing just about everything from scratch, which is rare when trying to get a product out on time. Still, it's interesting stuff and I'd love to some day get a viable alternative for established but clumsy and bloated languages (yes, C++ has become one of them).
 

wwm0nkey

Member
Oct 25, 2017
15,576
But who use C/C++ nowadays in the game industry, save for the engine and/or framework coders ?
UE4 still uses it with Blueprint. Unity uses C#.... I love C# and pray every day mono for UE4 becomes part of the engine fully, would love to use both engines as proficiently as I do Unity
 

jariw

Member
Oct 27, 2017
4,283
UE4 still uses it with Blueprint. Unity uses C#.... I love C# and pray every day mono for UE4 becomes part of the engine fully, would love to use both engines as proficiently as I do Unity

There's no need to use C++ even if an engine demands it. Scripting in (for example) Lua could be used the programmer's front end, and the Lua footprint is fairly small.
 

koutoru

Member
Oct 27, 2017
1,313
I watched some of his game engine development streams and he's been thinking about doing this for a while, so it's not too surprising.
 

Dreamwriter

Member
Oct 27, 2017
7,461
Good news, there's already a good alternative to C++, C#! I use it every day in the Unity game engine. Totally agree that C++ has a whole lot the developer has to think about when to come up with good optimized code, once I got used to C#, it really did increase my productivity and decrease my bugs.
 

Antialias

Frostbite Physics
Verified
Oct 25, 2017
27
He wrote his own programming language and only got 15% productivity gains? thinking_face.png
 

Suicide King

Banned
Oct 27, 2017
1,018
Programming languages are a dime a dozen, the more the merrier!
This is exactly what the makers of Java, Scala, Lua, Python, Angular, Dart, Go, Erlang and Kotlin thought. I'm not saying it's bad, but trendy new programming languages come up every year and it doesn't take too long before they become novel projects on GitHub and nothing more.
 

Deleted member 28076

User requested account closure
Banned
Oct 30, 2017
1,147
If he hadn't made The Witness, I'd think he was a loon. But now I'm on board with pretty much anything he does.
 

koutoru

Member
Oct 27, 2017
1,313
Naughty Dog did this exact same thing in during the PS2 era when they created GOAL (Game Oriented Assembly Lisp) where they found it actually ran faster than regular C.
 

ParsnipForest

Member
Oct 27, 2017
571
Australia
Watching those seems like the last thing a person would want to do. I'm speaking as a programmer who liked both Braid and The Witness.

It comes down to how interested you are in why he's making the language. Personally, I made it around 40 minutes into a video and called it a day. Pretty interesting but it got too technical for someone that's only really versed in scripting like me.
 

1-D_FE

Member
Oct 27, 2017
8,260
Good news, there's already a good alternative to C++, C#! I use it every day in the Unity game engine. Totally agree that C++ has a whole lot the developer has to think about when to come up with good optimized code, once I got used to C#, it really did increase my productivity and decrease my bugs.

Unity has improved light years since he first began this (MANY years ago). Still, I guess it's never a bad thing if this is truly open source. Unity could, in theory, be purchased tomorrow by someone who wants it proprietary. In the current market, however, can't imagine many people would choose this over Unity.