←back to thread

Four Years of Jai (2024)

(smarimccarthy.is)
166 points xixixao | 4 comments | | HN request time: 0.001s | source
Show context
sph ◴[] No.43726312[source]
Surprising deep and level headed analysis. Jai intrigues me a lot, but my cantankerous opinion is that I will not waste my energy learning a closed source language; this ain’t the 90s any more.

I am perfectly fine for it to remain a closed alpha while Jonathan irons out the design and enacts his vision, but I hope its source gets released or forked as free software eventually.

What I am curious about, which is how I evaluate any systems programming language, is how easy it is to write a kernel with Jai. Do I have access to an asm keyword, or can I easily link assembly files? Do I have access to the linker phase to customize the layout of the ELF file? Does it need a runtime to work? Can I disable the standard library?

replies(4): >>43726339 #>>43726530 #>>43726853 #>>43730682 #
mjburgess ◴[] No.43726339[source]
Iirc, pretty sure jblow has said he's open sourcing it. I think the rough timeline is: release game within the year, then the language (closed-source), then open source it.

Tbh, I think a lot of open source projects should consider following a similar strategy --- as soon as something's open sourced, you're now dealing with a lot of community management work which is onerous.

replies(3): >>43726361 #>>43726379 #>>43749235 #
xigoi ◴[] No.43726361[source]
> as soon as something's open sourced, you're now dealing with a lot of community management work which is onerous.

This is a common misconception. You can release the source code of your software without accepting contributions.

replies(5): >>43726406 #>>43726410 #>>43726436 #>>43726493 #>>43726632 #
1. mort96 ◴[] No.43726632[source]
IMO the main thing they're risking by open sourcing it is adoption. Keeping it closed source is a pretty clear sign to the rest of the world that the language is not ready for widespread adoption. As soon as you open source it, even if you mark it as alpha, you'll end up with people using the language, and breaking changes will at that point break people's code.
replies(1): >>43727302 #
2. diggan ◴[] No.43727302[source]
> language is not ready for widespread adoption.

Keeping things closed source is one way of indicating that. Another is to use a license that contains "THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED [...]" and then let people make their own choices. Just because something is open source doesn't mean it's ready for widespread adoption.

replies(2): >>43731744 #>>43753082 #
3. mort96 ◴[] No.43731744[source]
If you have users, then breaking changes will break those users. This is true regardless of how many warranty disclaimers you have.
4. scsh ◴[] No.43753082[source]
You're describing pretty much every popular open source license here, including the Linux kernel(GPLv2). This doesn't set the expectation that things can and will break at any time. That's also not the approach maintainers take with most serious projects.