Get Started with ArkCode

Last modified: 24 May 2026

What is this?

Welcome to the official documentation for ArkCode, an ultra-fast, minimalist programming language built entirely on a custom C++ runtime engine. ArkCode is designed to abstract away the heaviest parts of system-level programming—such as manual memory allocation and complex tooling ecosystems—while retaining the blazing-fast execution speeds of native code.

By taking heavy inspiration from Kotlin's declarative syntax and Python's readability, we've created a language that feels incredibly lightweight but executes with raw bare-metal efficiency.

What is its purpose?

Its primary purpose is to allow developers to harness the native, bare-metal speed of C++ without actually having to write C++. It abstracts away memory management, complex tooling, and obscure standard libraries into a clean, modern DSL.

Where and how it can be used

You can use ArkCode for anything from simple local file automation scripts, to full-scale desktop UI applications (via our native GTK3 integration). It supports both immediate JIT evaluation and compilation down to optimized machine-code binaries.

# Compile the toolchain
make aake

# Run a script natively
./build/aake script.arkc

# Compile a script to native machine code
./build/aake build script.arkc
./build/app

How it works

The aake binary operates both as a recursive descent interpreter and an Ahead-of-Time (AOT) compiler transpiling directly to optimized C++17. The AOT pipeline translates ArkCode ASTs into structured C++ and compiles them down to native machine executables using g++, achieving raw bare-metal execution speeds.

Where it can't be used and why

ArkCode cannot currently be used for low-level embedded systems programming (like writing a bootloader). Because memory management and typing are entirely abstracted and handled by the C++ engine to guarantee safety, you are intentionally locked out of manual memory address mapping.