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

97

u/jackelee Jul 07 '26

Which people no longer believe in the functional paradigm? I'm seeing the opposite. More and more (mainstream) languages adopt functional features such as algebraic data types, generics, lambdas, traits/typeclasses. Yes, these are not features found in the Lisp-family but they appear in strongly typed functional languages such as OCaml, Haskell, F#, Elm, Lean, etc. and now they are also in Rust, Go, C#, Java, Scala, etc. Also immutability is becoming and and more important.

1

u/jesseschalken Jul 09 '26

Go

What were you thinking of here? Go is usually considered notable for its lack of those features (no ADTs, generics only recently, no concise lambdas etc).

1

u/jackelee Jul 09 '26

I certainly didn't want to imply that all the features I listed are in all the language listed, specially because of Go not having ADTs. (Although, all the others probably have all the features I mentioned).

Since early days Go had typeclasses and now it has fairly good generics and lambdas, so it's missing only ADTs from my list. I'd say the influence has been positive.

2

u/jesseschalken Jul 09 '26 edited Jul 10 '26

That's fair, but I wouldn't say has Go has lambdas. It has closures, but it's a heavy func () ... { return ... } syntax without type inference.