Skip to content

RazorForge

RazorForge is a language for programs that do exactly what you meant. You say what you intend, the builder checks your code against it, and the result behaves as written, down to what a number does at its edges. An entity lives in one place unless you put it under a manager to share it, and a marker appears in the code wherever something would otherwise happen without anyone noticing.

import IO/Console

routine start()
    var level: U8 = 200
    show(level +% 100)
    show(level +^ 100)
    show(level + 100)
    return
44
255
Integer overflow error: The value does not fit in the target type.

+% wraps, +^ clamps and + stops the program with a message when the result doesn't fit in a U8.

Status

The current version is 0.5. RazorForge is not released yet, and syntax and library routines can still change from one version to the next.

Reading this guide

  • Getting Started installs RazorForge and runs a first program.
  • The Spirit and the Promise says what the language cares about and what you can count on.
  • A Quick Tour builds one small program from start to end.
  • RazorForge at a Glance lists each part of the language in one line, with a link to where it is explained.
  • The chapters from The Basic Shape on cover one topic each, and the appendices list the keywords and the diagnostics and show how to work with Suflae.

Every routine of the standard library is listed in the standard library reference.

Questions and feedback go to the issue tracker.