www.jammni.de

Logo - Kleiner Drache

Logo - Drache2. Das erste Haskell-Programm

Home >> Tutorials >> Haskell−Tutorial
 

Die Wahl der richtigen Dateiendung

Haskell-Programme werden zunächst in einem normalen Editor geschrieben (z.B Notepad), da es keine Entwicklungsumgebung gibt. Das heißt gleichzeitig, dass der Quellcode direkt vom Interpreter ausgeführt wird. Ein "umständliches" Kompilieren entfällt dadurch. Allerdings empfiehlt sich schon ein etwas gehobener Texteditor um bei etwaigen Fehlermeldungen direkt in die betreffende Zeile springen zu können. Die Standard-Dateiendung für Haskellprogramme ist .hs bzw. lhs.

Mit der Wahl der Dateiendung sind jedoch gleich einige Einschränkungen verbunden. Dateien, die auf .hs enden, werden als normale Quellcode-Dateien angesehen. Diese enthalten ganz normal den Quelltext und Kommentare, wie es in den meisten anderen Programmiersprachen auch ist. Lhs-Dateien dagegen sind standardmäßig nur Dateien, die aus einem Text bestehen (daher auch das l für literate). Der Quelltext selbst wird dabei extra gekennzeichnet.

Zur Veranschaulichung gibt es gleich einmal eine Funktion square, die das Quadrat einer Zahl zurückliefert. Zuerst die .hs-Version:
 
 
Listing 1 - Square.hs:
1:   {-***********************************************************************
2:   
3:     Square.hs
4:   
5:     Diese Datei gibt ein erstes Beispiel für ein Script in Haskell und
6:     definiert die Funktion square, die das Quadrat einer Zahl zurückgibt.
7:   
8:   ***********************************************************************-}
9:   
10:   -- Implementation der Funktion square
11:   
12:   square :: Int -> Int
13:   square n = n * n

  Und hier das Gegenstück - die lhs-Version:
 
 
Listing 2 - Square.lhs:
1:   ***********************************************************************
2:   
3:     Square.lhs
4:   
5:     Diese Datei gibt ein erstes Beispiel für ein Script in Haskell und
6:     definiert die Funktion square, die das Quadrat einer Zahl zurückgibt.
7:   
8:   ***********************************************************************
9:   
10:   Implementation der Funktion square
11:   
12:   >  square :: Int -> Int
13:   >  square n = n * n

 

Kommentare und Anweisungen

Die Kommentare sind im Quelltext grün hervorgehoben. In den hs-Dateien werden einzeilige Kommentare durch -- eingeleitet und gehen dann bis zum Ende der Zeile. Mehrzeilige Kommentare werden durch {- eingeleitet und enden bei -}. Dabei ist zu beachten, dass die Kommentare nicht ineinander verschachtelt werden können.
Die Programmanweisungen finden sich ganz normal im Quelltext wieder und werden nicht mit einem Semikolon oder Ähnlichem abgeschlossen.

In der literate-Version dagegen werden die Programmanweisungen durch   eingeleitet und gehen bis zum Ende der Zeile. Die Kommentare dagegen stehen als ganz normaler Text in der Datei.
In diesem Tutorial wird die erste Version (*.hs) bevorzugt.


Starten des Programms

Ausführen des Programms

Zum Starten des Programm wird der Interpreter gestartet. Für alle GUI-verwöhnten Mathematiker Winhugs aus dem Startmenü auswählen und starten. Dort aus dem Menü File->Open wählen und die Datei auswählen.
Und für alle Kommandozeilen-Freak den Interpreter starten und dann :l Dateiname eingeben.
Um nun noch die Funktion auszuführen, einfach square Zahl eingeben und anschließend das Ergebnis bewundern.
Damit wären auch die Grundsteine gelegt um ein Haskell-Programm auszuführen. Im Unterkapitel 2.1. wird als Nächstes der Funktionsaufbau besprochen.