newLISP ist ein von Lutz Mueller entwickelter Lisp-Dialekt, der seit 1991 als Skriptsprache konzipiert ist. Dank geringer Ressourcenanforderungen eignet er sich auch für eingebettete Systeme. newLISP reduziert Lisp auf seine Kernkomponenten Listen, Symbole und Lambda-Ausdrücke und nutzt ein ungewöhnliches Ein-Referenz-Speichermodell, das die Speicherverwaltung stark vereinfacht.

Erste Schritte

newlisp                 # interaktive REPL
newlisp skript.lsp      # Skript ausführen

Wichtige Befehle

  • Funktionen & Variablen: define, set, setq, lambda, fn
  • Listen: push, pop, assoc, lookup, slice, map, apply, filter
  • Kontrollfluss: dolist, dotimes, if, cond, when, until
  • Kontexte: context — ein Kontext mit Default-Funktor arbeitet wie eine Funktion mit Speicher, etwa als Wörterbuch
  • Netzwerk: net-listen, net-eval, net-send, net-receive
  • Text: println, print, regex, replace

Ein Kontext als Wörterbuch: (new Class 'Wortbuch) erzeugt einen eigenen Namensraum; Einträge liest man mit (assoc "Schluessel" (Wortbuch)).

Verwandte Grundlagen: PicoLisp-Befehle, Common-Lisp-Befehle und Hy-Befehle.