Racket ist ein moderner Lisp-Dialekt, der aus der Scheme-Tradition stammt und sich auf das Bauen von Sprachen spezialisiert hat — bekannt als language-oriented programming. Die DrRacket-IDE und das mächtige Makrosystem machen Racket besonders für Ausbildung und Sprachdesign beliebt.

Erste Schritte

Racket-Programme beginnen mit einem Sprach-Header; die Ausführung übernimmt racket:

#lang racket              ; erste Zeile jeder Datei
racket datei.rkt           ; Programm ausführen
racket -i -e "(+ 1 2)"     ; Ausdruck in REPL auswerten

raco: Die Kommandozeilen-Werkzeuge

  • raco make datei.rkt — kompiliert zu Bytecode.
  • raco pkg install paket — Paket installieren (Paketmanager).
  • raco pkg remove paket — Paket entfernen.
  • raco test — Tests aus dem Paket ausführen.
  • raco docs — lokale Dokumentation im Browser öffnen.
  • raco exe --gui datei.rkt — eigenständige ausführbare Datei bauen.

Sprachvariationen und Makros

#lang typed/racket        ; Typed Racket: statische Typen
#lang scribble            ; Dokumentationssprache
(define-syntax-rule (swap a b) ...)  ; eigenes Makro

Praxis-Tipps

  • DrRacket bietet Schritt-für-Schritt-Debugging und einen Stepper für Anfänger.
  • Mit #lang lassen sich eigene DSLs definieren — Racket kompiliert dann die neue Sprache.
  • Für Web-Anwendungen existiert das Web-Server-Paket im Racket-Ökosystem.

Verwandte Grundlagen: Scheme-Befehle, Common-Lisp-Befehle, Emacs-Lisp-Befehle.