A programming language for learners

Learn to think
like a programmer.

Fractal bridges the gap between Python's friendliness and C's discipline. Strict types, readable syntax, and error messages that actually teach you something.

Strictly TypedC-like SyntaxHuman ErrorsBuilt-in Editor
example.fr
1// declare variables with a colon prefix
2!start
3 :int age = 25;
4 :float score = 9.5;
5 :int result = age + :int(score);
6!end
:int and :float- types you can't miss

Between Python and C,
there's a gap.

Python hides too much. C explains too little. Fractal sits exactly in the middle.

Python

No types means no discipline. Beginners never learn to think about what data they're working with - until C forces them to, all at once.

Missing: type discipline

Fractal

Types are visible and required. Errors are friendly and instructive. The syntax maps 1:1 to C. When you're ready to move on, you already speak the language.

The bridge you need

C

Correct and fast, but its error messages are cryptic, its learning curve is steep, and it offers no help when things go wrong.

Missing: learner support

Built to be readable.

Every keyword stands out visually. You can glance at any line and know exactly what's happening.

!start / !end

Block delimiters you can't confuse with anything else. The ! prefix flags control keywords.

:int :float :string

Types always start with :. You always know what a variable holds - no guessing.

:int(value)

Explicit casting. Converting types is intentional and visible, not silent.

x = 10
y = "hello"
z = x + y   # runtime error!

No type safety. Errors only appear when code actually runs.

Errors that teach, not punish.

When something goes wrong, Fractal explains what happened and shows you how to fix it - in plain language.

mistake.fr
1:int age = "hello";
Fractal says:
✗  1 error(s): Semantic Error: cannot initialise `age` (type `:int`) with expression of type `:array<:char, 5>
01
Plain language first

No error codes. No pointer arithmetic jargon. Just a sentence that describes the mistake.

02
Always a suggestion

Every error message ends with at least one concrete fix you can copy and try immediately.

03
Line and column

Errors point exactly to where the problem is - no hunting through your whole file.

Everything in one window.

The Fractal editor is built for beginners. No setup, no extensions to install, no configuration files.

Syntax Highlighting

Keywords, types, and values are colour-coded to match the language rules you're learning.

Auto-Indentation

Code formats itself as you type. Focus on logic, not spacing.

Integrated Terminal

Write code and see output in the same window. No switching between apps.

Multi-Tab Editing

Work on multiple files at once with a familiar tab interface.

Search & Replace

Find any symbol, variable or keyword across your file instantly.

Built-in Docs

Language reference is one click away - inside the editor, always.

Start writing Fractal today.

Pick your platform and follow the steps below.

fetching latest release…
01
Install Rust

Fractal is built in Rust. Download the installer from rustup.rs → — it sets up rustc and cargo automatically.

02
Install Git & Git Bash

Download Git for Windows from git-scm.com → — the installer includes Git Bash, which you'll use to run Fractal.

03
Clone the repository

Open Git Bash and run:

git clone https://github.com/Pixelrick420/Fractal.git
All releases on GitHub →