Programming languages, from the ground up

Start with the fundamentals.
See what happens underneath.

Explore variables, memory, functions, and runtimes. Learn the language's rules, follow what your code does, and compare the ideas across languages.

Primerian is being written in the open. See what's drafted so far

Written for TypeScriptGoRustCHaskellJava Choose a language in any lesson; TypeScript is the default.

Seven ways to deepen your understanding.

Learn the rules, explore the runtime, put numbers to work, follow the request, secure what you build, and ship something useful.

482 topics

A small question. A deeper understanding.

Clear explanations, visual models, and experiments you can run.

  1. 01 / Ask

    Start with something concrete.

    What does this variable hold? What gets passed into a function? Make a prediction.

  2. 02 / Follow

    Look beneath the code.

    Step through the values, calls, and boundaries. Separate the language's rules from the diagram's model.

  3. 03 / Try

    Change it. Explain it.

    Run a different case, then compare how another language handles the same idea.

Still taking shape

Understand the foundations. Build on them.

Primerian gives you the language and execution foundations for Heyrian's patterns, algorithms, and architecture lessons. Every lesson here is a draft under review: open to read, and still changing.

Start with Declaration and initialization, then follow Assignment and reassignment, or browse the whole catalog.