Skip to content
Formalized description of Red: lexical, syntactic and semantic
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


About this document

The purpose of this document is to systematically describe the lexical/syntactic and semantic rules of the Red programming language. The approach is largely complementary to the Red Core Language documentation found in this Gitbook.

The document is work in progress, and remarks about its correctness and completeness are invited as Issues. Concrete suggestions for improvement may be offered in the form of Pull requests (PRs).

In as much as feasible, and in order to avoid duplication, existing pieces of official documentation will be referred to. These are:

  1. Usage information for the toolchain: README

  2. Wiki-style general documentation: Red Wiki

  3. Red/System: Red/System Language Specification

  4. Red Programming Language Documentation (Gitbook), notably:

  5. Overview of value conversions: Conversion matrix

  6. Parse documentation (blog article from 2013): Introducing Parse

  7. Handling of NaNs, INFs, and signed zeros: in Red Wiki under Reference

Because of the wealth of built-in functions that Red makes available, combined with the numerous optional facilities ("refinements") that these functions have, it is not possible to give an exhaustive treatment of Red’s functionality. Red allows quite detailed information about a function’s operation to be documented within the function specification, and in order to be able to use any function optimally this can be consulted interactively (help-facilities).

This document is not intended to be used in order to learn the language (tutorial); for that purpose sufficient materials can be found using the Red Wiki.

You can’t perform that action at this time.