Christoffer Lernö is not announcing that C3 has suddenly become a different programming language. He is saying that he spent years describing it with a phrase that no longer meant what he thought it meant.1
“C alternative” had seemed obvious. In his August 16 post, C3’s creator explains that his mental model still came from a period when C was commonly treated as an application language. For many current developers, he argues, the phrase now points toward the places where C remains especially visible: operating systems, embedded work, performance-sensitive libraries and specialised backends.1
That difference in definition creates a very practical positioning problem. C3 will talk less about being “C-like” and more about being a language for general-purpose applications.1

The post is interesting because it is less about syntax than professional memory. Lernö moves through BASIC, Turbo Pascal, C, C++, Java and PHP. His recurring reference point is the speed with which a procedural program could be built without committing early to an elaborate object architecture.1
That leads to another argument in the essay: his suspicion of “methods first” design and parts of object-oriented programming. In his account, thinking game.run() rather than run(&game) encourages structural relationships that become expensive to reverse as understanding of the problem changes.1
That claim needs to stay in its proper box. It is an opinion grounded in Lernö’s experience and C3’s design goals, not a universal result about the productivity of object-oriented projects. Turning the piece into another “OOP versus procedural” war would be a waste of a better observation, besides forcing programmers to perform one of their oldest seasonal rituals again.
The more useful point is what Lernö says he wanted from the beginning: to “refresh C” into something that retained directness and performance while adding enough ergonomics for ordinary modern applications.1 Strings, dynamic arrays, maps and similar conveniences matter because the intended comparison was never only with C. Depending on the application, he had C++, Swift, Java or Kotlin in mind too.
Software can remain largely the same while the category used to explain it becomes wrong. That is what Lernö is describing. C3 picked a shortcut that made sense to its creator, then discovered that the shortcut was steering part of the audience toward precisely the wrong expectations.
Changing the label will not make C3 a successful general-purpose language by declaration. It does, however, clarify the test Lernö wants it to face: not only “is this a better C for low-level work?”, but “is this a pleasant language in which to build an entire application?”.
