Red ist eine von Nenad Rakočević entwickelte Programmiersprache, die 2011 als spiritueller Nachfolger von Rebol veröffentlicht wurde. Red übernimmt Rebols Datenorientierung und Dialekt-Konzept, ist aber vollständig Open Source und deckt mit einer etwa 1 MB großen Toolchain den ganzen Stack ab: vom systemnahen Red/System bis zu höheren Ebenen mit grafischer Oberfläche.

Erste Schritte

Red-Skripte kompiliert und startet man direkt mit dem red-Kommando:

red hallo.red      # ausfuehren
red -c hallo.red   # nur kompilieren
red -r hallo.red   # kompilieren und starten
red -t Windows hallo.red   # Cross-Kompilierung

Red/System

Red/System ist die C-Ebene von Red: eine kleine Systemprogrammiersprache mit Zeigern, Structs und direkter Speicheradressierung, die nativen Code erzeugt. So lassen sich ohne Umweg über C schnelle, eigenständige Binaries bauen. Oberhalb davon stellt Red selbst Objekte, Serien und Dialekte wie den View-Dialekt für GUIs bereit:

Red []
view [text "Hallo" button "Klick"]

Wichtige Befehle

  • red, redc — Interpreter-Compiler beziehungsweise Compiler-Binary
  • -t mit Ziel-Plattform (Windows, Linux, macOS, Android …) für Cross-Kompilierung
  • print, append, foreach, either, parse — aus Rebol übernommene Kernfunktionen
  • view [ ... ] — GUI-Anzeige über den View-Dialekt

Wer systemnahe dynamische Sprachen vergleicht, findet Parallelen zu Pike (C-ähnliche Syntax mit starkem Typsystem) und zu C/C++-Befehlen (Red/System als C-Alternative).