It&#x27;s because the author doesn&#x27;t want a whole new language, but rather a better way to build abstractions over C.<p>What he wants is C&#x27;s conceptual model with sexpr syntax and (therefore) the ability to build custom abstractions on top of it. That&#x27;s different from working in an entirely other programming language with its own conceptual model that happens to compile to C.<p>You would see this difference vividly in the C that the two systems generate: the first would read like a more verbose version of the same application in which the skeleton of the program is recognizable; the second would look like machine gobbledygook. The former would be debuggable in a way that let you step through the logic of the surface program, while the other probably wouldn&#x27;t. And so on.<p>Instead of thinking of this as a different language, think of it as &#x27;magic C with DSLs&#x27;, or &#x27;C, with a macro system that lets you do what you want&#x27;. That distinction isn&#x27;t absolute, because if you push your abstractions far enough you will end up with a different language, but the style of programming the author is talking about gives you incentives not to do that.