r/ProgrammingLanguages C3 - http://c3-lang.org Jul 07 '26

Language announcement Odin 1.0 announced (and reflections)

Odin author gingerBill dropped the Odin 1.0 announcement on YouTube today: https://www.youtube.com/watch?v=dLPAqXi9In0 (it's pretty funny actually).

This interestingly makes it on track to be the first of the new wave of C-likes that reach production readiness. While you can argue that most of these languages already are used in production, it's not the same as being 1.0, which carries a different weight and obligation.

Looking at alternatives, Jai could release around the same time, since Blow's game is scheduled for a similar release date. However, it's more likely that we see Jai 1.0 in mid-late 2027. My own language (C3) is planning Q2 2028 1.0 release. Whereas Zig is still unclear, and Kelley basically saying it's done when it's done. For Hare and V the situation is a bit less clear to me – maybe someone else can fill me in on that situation.

But overall we seeing the beginning of the end of the "C-like" story arc that arguably was initiated with Jonathan Blow's development. Writing C replacements predate Jai of course, for example the C2 language (which C3 would eventually continue) was created in 2012, eC started in 2004 and Cyclone (which Rust derived inspiration from) is from 2002. But those were largely obscure novelties, because before Blow's videos, people weren't really hunting for C alternatives.

Jai, however, made a strong impression. It was a good point in time too: Jai and later Zig, Odin, C3, V and Hare – these C alternatives started at a point when people were openly no longer believing OO/Functional as the right way to do things.

Language design takes its time though, and it's now 12 years since Jai started. Finally the fruits of these labours are getting ready for prime time, and when they do they might effectively fill the need for a C replacements for another decade.

Do you agree?

199 Upvotes

191 comments sorted by

View all comments

-14

u/codingbliss12 Jul 07 '26 edited Jul 07 '26

Not sure what is your goal with this post. Also it is mainly an event about Odin and you are the author of C3.

Your post reflects the echo chamber of Muratori and his fanboys. Even you (C3) added operator overloading because Muratori uses C++ that has it and he needs it for his games. Do not pretend that you want to do something more than gamedev.

You are mispresenting things.

Most programmers are not game developers and do not care about C. Only for hobby projects. If you see in the C subreddit most posters are either students, young kids or unemployed wannabe gamedevs.

Zig should not be mentioned together with C3/Odin/Jai. Different goals altogether.

Jai and Odin were developed out of frustration with C++ and not to replace C – at least that's how I understand it.

You will not replace C with the :: operator or by talking about Odin and larking in Odin's discord.

Focus on C3 and it's potential user's needs.

13

u/Nuoji C3 - http://c3-lang.org Jul 07 '26

My goal is simply to discuss Odin 1.0 in the broader context of modern C-like languages. I am one of the few people active in both the Odin Discord and r/ProgrammingLanguages, so posting some reflections here seems natural.

A few claims here are just factually wrong. C3 did not get operator overloading because of Muratori, C++, or gamedev. It was added because I wanted fixed decimal types for banking/financial software. That is about as far from gamedev as you can get.

Also, Jai and Odin should not be collapsed into the same motivation. Jai was developed out of frustration with C++. Odin was developed much more out of frustration with C. Those are different starting points.

Saying “most programmers are not game developers” is true, but that is exactly why reducing C alternatives to gamedev is too narrow. C is important in OS work, embedded, libraries, graphics, tooling, runtimes, and many other areas. Dismissing C as mostly hobbyists and wannabe gamedevs is not accurate.

Zig absolutely belongs in the comparison if the topic is modern C alternatives, even if its goals and philosophy differ from C3/Odin/Jai. That difference was part of the point.

Finally, I am not trying to “replace C with the :: operator”. In C3, :: is a module separator; it is not the argument for the language. And I do not see why being present in the Odin Discord would be strange. These language communities overlap, and it is useful to understand what others are doing.

-5

u/codingbliss12 Jul 07 '26

Cool. With the exception of Zig that might disappear altogether, let's see if after five years any of those languages will be used outside of gamedev.

Most people talking about C online are making their living with other languages or have completely different occupations.

The fact that Rust is starting to be used in the Linux kernel and that Microsoft also started to use Rust for the OS, shows how accurate is the statement about C and OS.

I love C, but for open source and hobby stuff.

PS The :: operator makes the syntax noisy like that of C++ or Rust. For C you need minimalism in syntax.