nC_PROGRAMMING LANGUAGE

NATIVE BOOTSTRAP · V81

The program.
The memory.
The machine.

nC integrates functions, explicit memory and machine instructions. Its compiler preserves types, control flow and representation contracts through analysis, lowering and linking.

Open development · Manual memory · Windows and Linux x86-64

hello.nnC SOURCE
use <io:output>;

helloCompacto {
    to main {
        println("Hello, nC public beta");
    }

    fa:
        return true;
}
01 Source→02 Typed IR→03 Machine
Verified repository example
PROJECT STATUS

Byte-identical B/C reconstructions within each V81 host. Global Stage3 remains open.

Read the evidence ↗

WHY nC

Preserve meaning
across levels.

Layout, alignment, pointer validity and calling convention affect observable program behavior. nC aims to preserve those contracts across source, IR and emitted code.

Current work covers native reconstruction, runtime consistency and validation of objects and images on documented profiles.

Language design and motivation ↗

NATIVE TOOLCHAIN

Compile and run
with ncc.

The kit contains ncc, its runtime provider and hello.n. Run these commands from the extracted directory to emit a PE or ELF image and verify its result.

Select a package and verify its hashes ↗
01 Prebuilt compiler02 Identified provider03 Verified output and exit code
❯PowerShell · inside the extracted kit
.\ncc.exe self-test
.\ncc.exe compiler emit-executable hello.n `
  --target x86_64-pc-windows-msvc --out hello.exe
.\hello.exe
VERIFIED OUTPUT
Hello, nC public beta
Process completed · exit 0

The V81 kit exposes a partial bootstrap CLI. Check its command set before applying a Stage0 recipe.

COMPILER PIPELINE

Contracts between phases.

Inspect each phase and its responsibilities.
Types, flow, representation and target dependencies.

01 / SOURCEEXPLICIT CONTRACT

Declare the program.

Functions, typed places and imports define program units. Visibility, control flow and representation must retain their identity through analysis.

SOURCE REFERENCEexamples/00_hello/hello.n
Read the contract ↗
Memory retains its manual/raw contract.Architecture reference ↗

LIBRARY

Language, toolchain and architecture.

Browse the documentation ↗

BEFORE YOU RUN

Requirements and limits.

Dependencies, tested platforms and the scope of the V81 CLI.

Do I need Rust or LLVM?

The native kit includes the compiler and provider required for the first program. Building Stage0 from source still requires Rust, a verified native seed and an archiver.

Which systems have been tested?

The kit was tested on Windows x86-64 and Ubuntu 24.04 under WSL x86-64. Linux requires glibc 2.34 symbols or later. Other profiles have separate scopes documented in the technical references.

What does bootstrap mean here?

The project builds and verifies the compiler using its own tools. V81 records identical B/C generations within each host. Stage0 is retained, and global Stage3 promotion remains open.

Does type checking provide memory safety?

nC has manual/raw semantics. The program controls allocations, addresses and release. Type checking does not add ownership or implicit pointer-lifetime checks.

What belongs in a bug report?

Host and architecture, compiler and provider digests, complete command, minimal source, diagnostic and expected result. Identify whether the failure occurs during analysis, emission, linking or execution.

OPEN DEVELOPMENT

A reproducible regression.
A verifiable contract.

Include minimal source, the command, compiler digest, provider and expected result. A language change must keep parser, AST, semantics and IR consistent.

Search nC