Live data from Hacker News

Porting 58k lines of D and C++ to Jai

yet-another-blog.com

151–160 of 264 posts

Re: Porting 58k lines of D and C++ to Jai

#151
post #21

Earlier quoted context omitted.

I'm starting to actually believe that Rust will eat C's lunch for systems programming.

The disparity between Rust jobs and C/C++/C#/Java/Golang jobs on Indeed is staggering. Even worse, most of the Rust jobs are blockchain-related and may not survive the coming blockchain downturn. It may be the case that some people use Rust but without Rust jobs, there will be no pool of experienced developers to later draw on.

> The disparity between Rust jobs and C/C++/C#/Java/Golang jobs on Indeed is staggering.

Most of the world are things other than real systems programming. C++/C#/Java/Golang are likely better choices for this than either C or Rust.

But a C-like language is necessary. Rust may be (very slowly) displacing C for systems programming.

As you mention, it takes awhile for the pool of experienced developers to show up.

Re: Porting 58k lines of D and C++ to Jai

#152
post #112

Earlier quoted context omitted.

I think that Jai / Zig / Odin all started around the same time. D is closer to C++ than C, in my opinion. I suspect that Jai was an inspiration for Zig and Odin. Many developers in gamedev circles are still using C or orthodox C++ (C++ without most of the bullshit) but are frustrated by many features and gaps. Short compilation time is one of the big goals, as it is crucial for fast iteration. The goal is simply to h…

If you can find very old Jai videos on YouTube, you can find the creator of Odin was one of the early people excited about the project. I suppose if the development of Jai was made more in the open/public, Odin would probably not have existed. That said, I'm glad Odin exists.

You can find the creator of Zig in those videos as well

Re: Porting 58k lines of D and C++ to Jai

#153

Earlier quoted context omitted.

If there's enough actual interest, some group of people will just clone the language in an open manner since enough is known about it. But that doesn't seem to be happening at the moment.

I thought Odin was one of the clone languages at the start (although later it diverged from Jai in many aspects, and is far ahead Jai in the aspect that it's open-source and is actually being used in production). But really I would like Jai to take some time to mature over the years, instead of rushing out for an immediate public release. It has some very ambitious ideas that would absolutely be killer features, but…

Odin has similar syntax, but one of the main reasons I am interested in Jai is because it has strong meta-programming support[0], where as Odin doesn't and will likely never due to the author of the language not wanting to go in that direction.

[0] - https://github.com/Jai-Community/Jai-Community-Library/wiki/...

Re: Porting 58k lines of D and C++ to Jai

#154
post #50

This person might as well said that he is not planning to finish his game. Screwing around with tooling and languages seems to be a common pitfall to not finishing a game. Why not just use the best ecosystem like Unreal/Unity and get the game out of the door fast?

Ironically, Unreal Engine was in large part born from Tim Sweeney's "screwing around with tooling and languages". UnrealScript has long been dropped in favour of C++, but I'm pretty sure Unreal Engine wouldn't exist today, or would be a very different beast, if it hadn't been for UnrealScript and the Unreal Editor being bundled with the original Unreal and its sequels/follow-ups, and Tim's personal interest and resea…

>Can I assume your use of the phrase "this person" means you are unfamiliar with Mr Blow, and his track record in game development?

Not OP, but I'm fairly sure "this person" refers to the blog post author, not JB.

Re: Porting 58k lines of D and C++ to Jai

#155
post #153

Earlier quoted context omitted.

I thought Odin was one of the clone languages at the start (although later it diverged from Jai in many aspects, and is far ahead Jai in the aspect that it's open-source and is actually being used in production). But really I would like Jai to take some time to mature over the years, instead of rushing out for an immediate public release. It has some very ambitious ideas that would absolutely be killer features, but…

Odin has similar syntax, but one of the main reasons I am interested in Jai is because it has strong meta-programming support[0], where as Odin doesn't and will likely never due to the author of the language not wanting to go in that direction. [0] - https://github.com/Jai-Community/Jai-Community-Library/wiki/...

What do you think about Zig?

I am not a fan of metaprogramming, but this is a relatively important feature of Zig.

Re: Porting 58k lines of D and C++ to Jai

#156
Please choose more descriptive titles for your submissions here, people.

Some dude I don't know is porting a game I know nothing about to a language I know nothing about and his reason is "because I feel like it". He has grievances about the current state of things and the port hasn't gotten anywhere yet.

I have a hard time thinking of a blog post that would be less useful to me.

No lessons learned, no "why you should consider this obscure programming language you have never heard anything about". Also you need to go to wikipedia to find out the programming language is targeted at games. Programming games is not one of my interests.

You'd think they at least explain why jai is good for programming games. But they don't. The blog post can't, in fact, because he hasn't gotten far enough yet to draw any conclusions.

At least make it look like you are making an effort to not waste my time.

Re: Porting 58k lines of D and C++ to Jai

#157
post #41

Earlier quoted context omitted.

While I agree with most of your points, I am not sure what this has to do with the parent you're replying to. The one part I disagree with is: > A lot of these things do find some modest niche to survive in. But none really take over the world as originally forecast by the hype wave. One of Blow's critique of C++ is specifically that it's trying to be the everything language. Jai's goal is to be for video game develo…

I was surprised to recently learn that embedded isn't on Jai's roadmap. I respect the decision re scope and feature-creep. It was surprising, given that usually languages with the performance, and low-level capabilities of C are also suited for embedded. Ie: The overlap with existing languages is almost 100% when you look at A: Languages that are fast/LL. B: Languages that are suitable for embedded. (The usual suspec…

I imagine that part of that is that he's a video game developer and not an embedded systems developer. I have no experience with embedded systems programming so idk how similar the two are.

But:

1) Lots of things things have high overlap with fast/LL languages.

2) I imagine there are nice returns to focusing the language on a specific use-case, even more so when the core developers are not actively using it for the other use cases (I doubt he or his team will be doing embedded work anytime soon).

Re: Porting 58k lines of D and C++ to Jai

#158
post #133

Earlier quoted context omitted.

A chunk has already switched to C# with Unity. Most other engines (proprietary, Unreal, etc) have decades of C++ that would require too much effort to migrate to anything new.

Unity is still written in C++. It's fairly common to write the core engine in C++ and use a language like Lua, or as is more common in AAA, some proprietary scripting language for gameplay code.

Interesting. I heard the Civilization games were Lua, didn’t know that was more common.

Re: Porting 58k lines of D and C++ to Jai

#159
post #6

I'm really interested to see Jai in the wild, but I have to say I find the Jai v.s. Rust comparison here...unconvincing to say to least. It's particularly funny to be excited about "being able to do anything during compilation" using Jai and then complain to that the #1 problem in programming is "culturally tolerated and even encouraged complexity."

I'm also slightly puzzled at saying "compilation is too slow!" followed by "I want to do anything during compilation". I think these are somewhat opposed to each other.

Obviously it's not the only reason for slowness (stuff like templates vs vtables for example are also a huge impact), but at some point I tried to do some more advanced comptime stuff in Zig (it's pretty long ago, around Zig 0.6 or 0.7), and it became incredibly slow to compile. I'd assume it's gotten better with the newer and faster self-hosting compiler, but it still shows that with full comptime programming you can make your compiler as slow as your comptime program.

Re: Porting 58k lines of D and C++ to Jai

#160
post #158
post #133

Earlier quoted context omitted.

Unity is still written in C++. It's fairly common to write the core engine in C++ and use a language like Lua, or as is more common in AAA, some proprietary scripting language for gameplay code.

Interesting. I heard the Civilization games were Lua, didn’t know that was more common.

Quite common: https://en.m.wikipedia.org/wiki/Category:Lua_(programming_la...

I work on CorsixTH as a hobby which is also c++ and lua.

Post reply on HN