Programmieren in Nu

Dieses Kapitel geht mehr ins Detail, wie mit Nushell programmiert werden kann. Jedes grössere Sprach-Merkmal hat sein eigenes Kapitel.

Wie die meisten Programmiersprachen, können in Nushell Funktionen definiert werden. Nushell verwendet dafür Eigene Befehle.

Von anderen Shells sind Aliase vermutlich ein Begriff. In Nushell sind Aliase nicht nur ein Shell Merkmal, sondern Teil der Programmiersprache.

Gebräuchliche Tätigkeiten wie Additionen oder Regex Suchen, können mit operators durchgeführt werden. Nicht alle Operationen funktionieren für alle Datentypen. Nushell unterstützt dabei mit hilfreichen Fehlermeldungen.

Zwischenergebnisse können in Variablen gespeichert sowie als Unterausdrücke jederzeit ausgewertet werden.

Die letzten drei Kapitel zielen darauf den Code zu organisieren:

Skripte sind die einfachste Form der Organisation: Einfach den Code in eine Datei speichern und mit source einbinden. Allerdins können Skripte auf als eigenständige Programme inklusive Befehls Signatur dank dem "speziellen" main Befehl verwendet werden.

Mit Modulen kann, wie in vielen anderen Programmiersprachen, der Code aus mehreren kleineren Stücken zusammengefügt werden. In Modulen kann eine öffentliche Schnittstelle definiert und von nicht öffentlichen Befehlen getrennt werden. Eigene Befehle, Aliase und Umgebungsvariablen können von Modulen importiert werden.

Überlagerung bauen auf Modulen auf. Mit dem Verwenden einer Überlagerung, werden Modul Definitionen in eigenen austauschbaren "Ebenen" übereinander gestapelt. Dies erlaubt Eigenschaften wie, Aktivieren von virtuellen Umgebungen oder Überschreiben von standard Befehlen mit eigenen Varianten.

Der Hilfetext eines eingebauten Befehls zeigt die Signatur. Er zeigt auf, wie Befehle im allgemeinen verwendet werden können.

Die Standardbibliothek beinhaltet ebenso ein Test Framework, um zu testen, dass der Code auch wirklich perfekt funktioniert.