ALPHA: breaking changes expected. What that means
NanoC

NanoC compared

Where NanoC sits among systems languages. It is a frontend for C, not a replacement for it.

WhatCZigRustNimNanoC
Compiles tomachine codemachine codemachine codeC, C++ or JSplain C11 or C++17
Block syntaxbracesbracesbracesindentationindentation
Translate-time codepreprocessor textcomptimemacro_rules!, proc macrostemplates, macrosmacros and @tt programs, rewritten until stable
Build-time codeMake, CMake…build.zigbuild.rsnimscriptExternal build tools
Existing Cnative@cImportFFI / bindgenimportcunmarked C is kept as-is
Runtime / depsnonenonestd, cratesGC or ARCnone: it is just C
Inspect the outputn/aassembly / LLVM IRMIR / assemblygenerated Cgenerated C, with #line back to your source

Qualitative and simplified: each language does much more than this table shows. NanoC's pitch is narrow: keep C's output and ecosystem, lose the ceremony.

When NanoC fits

When it does not