2. Elm

Die Konsole

Sie werden in diesem Kurs viel mit der Konsole arbeiten. Damit meine ich das hier:

Eine Windows-Konsole:

Eine Mac-Konsole:

Ähnlich wie im File-Explorer können Sie auf der Konsole durch den Verzeichnisbaum wandern. Meine Beispiele beziehen sich hier auf die Windows-Konsole. Unter Linux oder Mac ist teilweise leicht verschieden. Klicken Sie auf das Start-Symbol in der linken unteren Ecke, tippen cmd ein und drücken Enter. Die Konsole sollte sich öffnen:

C:\>

Klicken Sie auf

Viele Screenshots und eine sichere Anleitung, dass alle das auf die Tastleiste kriegen.

Ihr Verzeichnis auf den Rechnern im Rechnerraum

Wenn Sie Ihren eigenen Laptop nutzen, können Sie diesen Abschnitt überspringen. Ansonsten: Öffnen Sie den File Explorer und betrachten Sie die verschiedenen Laufwerke:

Screenshots der Laufwerke.

Was ist der Unterschied zwischen C:\, D:\ und H:\? Die Laufwerke C:\ und D:\ liegen auf dem Rechner, an dem Sie sitzen. Das Laufwerk H:\ gehört Ihnen und liegt auf einem zentralen Server. Konkret heißt das:

  • Andere Nutzer, die sich später (morgen) auf dem gleichen Rechner einloggen, können die Daten, die Sie auf C:\ und D:\ gespeichert haben, sehen. Die Daten sind also "öffentlich". Sie liegen physisch auf dem Rechner, an dem Sie sitzen.
  • Wenn Sie heute eine Datei auf C:\ oder D:\ abspeichern und später sich auf einem anderen HSZG-Rechner einloggen, dann können Sie diese Datei nicht mehr finden. Sie liegt ja auf einem anderen Rechner.
  • Wenn Sie eine Datei auf H:\ abspeichern, dann
    1. können andere Nutzer, die sich später auf dem gleichen Rechner einloggen, sie nicht sehen
    2. können Sie, wenn Sie sich morgen an einem anderen Rechner einloggen, sie immer noch sehen.
    Das Laufwerk H:\ ist ein Netzwerklaufwerk. Es ist Ihnen persönlich zugeordnet und wird beim Start in den Rechner geladen, an dem Sie sitzen (gemountet).
Fazit: Speichern Sie am Besten alles auf H:\ und nichts auf C:\. Passen Sie auf, denn die Datei-Speichern-Dialogfenster von Windows-Programmen führen Sie oft erst einmal nach C:\.

Ihr PP-Verzeichnis

Legen Sie für diese Veranstaltung ein Verzeichnis PP (Abkürzung für Programmierparadigmen) an. Wen Sie auf einem HSZG-Rechner arbeiten, stellen Sie sicher, dass der auf dem Laufwerk H:\ liegt. Alle Dateien, die Sie im Laufe dieser Veranstaltung erstellen und herunterladen, speichern Sie unter PP oder in einem Unterverzeichnis ab. (Falls Sie selbst schon ein Ordnungssystem haben, Ihre Dateien irgendwie zu organisieren, dürfen Sie natürlich tun, was Sie wollen; dieser Abschnitt ist eher als Hilfe für Neulinge gemeint.) Sie können dann auf der Konsole in das Verzeichnis laufen, indem Sie folgende Befehle nacheinander eingeben. Im folgenden Beispiel stellen die grauen Zeichen das dar, was die Konsole von sich aus druckt; Ihre Eingaben sind in schwarz zu sehen.

C:\> H:\
H:\> cd PP
H:\PP\>

Elm auf Ihrem Rechner installieren

Sie finden in Netz ausgezeichnete Einführung in Elm, besonders, wenn Sie auch daran interessiert sind, Elm für die Entwicklung von Web-Applikationen zu verwenden (wofür es eigentlich ursprünglich gedacht ist).

Im Rechnerraum sollte Elm bereits installiert sein. Wenn Sie an einem eigenen Rechner arbeiten, dann laden Sie sich den Elm-Installer herunter, öffnen Sie ihn und folgen den Schritten. Eventuell müssen Sie auch noch Node.js installieren.

Falls Sie Schwierigkeiten bei der Installation haben, kontaktieren Sie mich so schnell wie möglich oder fragen Kommilitonen! Es ist für diese Veranstaltung unerlässlich, dass Sie selbst programmieren!

Ein Elm-Projekt starten

Wir schreiben in dieser Vorlesung keine großen Software-Projekte. Dennoch besteht Elm darauf, dass Sie Ihre Quelltext-Dateien im "richtigen" Ordner ablegen. Legen Sie sich auf Ihrem Rechner einen Ordner an, wo Sie die Elm-Programme für die Vorlesung Programmierparadigmen speichern wollen. Legen Sie dafür unter H:\PP\ einen Unterorder elm an. Gehen Sie mit der Konsole in diesen Ordner und tippen Sie elm init. Schritt für Schritt heißt das:

C:\> H:\
H:\> cd PP\elm
H:\PP\>\elm\> elm init
Hello! Elm projects always start with an elm.json file. I can create them!

Now you may be wondering, what will be in this file? How do I add Elm files to
my project? How do I see it in the browser? How will my code grow? Do I need
more directories? What about tests? Etc.

Check out <https://elm-lang.org/0.19.1/init> for all the answers!

Knowing all that, would you like me to create an elm.json file now? [Y/n]: 

Geben Sie nun Y ein und drücken Enter. Es wird jetzt eine Datei elm.json und ein Verzeichnis src erstellt. Jetzt können Sie Elm im sogenannten Repl-Modus starten:

H:\PP\>\elm\> elm repl
---- Elm 0.19.1 ----------------------------------------------------------------
Say :help for help and :exit to exit! More at <https://elm-lang.org/0.19.1/repl>
--------------------------------------------------------------------------------
1 + 1               
2 : number
"guten" ++ " " ++ "tag"
"guten tag" : String

Im nächsten Teilkapitel werden wir all das, was wir in Kapitel 1 informell getan haben, nun formel in Elm programmieren.