www.jammni.de

Logo - Kleiner Drache
Login
Username:

Passwort:

Daten merken
Auto-Login
Registrieren
 
Online
niemand
 
Forumsuche
Suche nach:

Logo - DracheHaskell-Forum

hasch

Gepostet:
20.05.2008 18:43

Haskell-Funktion definieren: Ord a => a -> a -> a -> Bool  
Hallo zusammen,
ich soll eine Haskell-Funktion definieren:

weakAscendingOrder :: Ord a => a -> a -> a -> Bool

weakAscendingOrder 2 3 3 soll bsw. True zurückgeben (sprich alle Argumente sollen in aufsteigender Reihenfolge vorliegen).

Kann mir jemand erklären, was dieses Ord a => a -> a -> a macht? Danke :)
Zum Seitenanfang    
 
Siracusa

Gepostet:
20.05.2008 22:37

   
Hallo hasch,

zunächst mal wilkommen im Forum!

Also das ganze Ding ist der Typ der Funktion. Es sollen also drei Werte vom Typ a an die Funktion übergeben werden und dann ein Bool zurückgeliefert werden. "Ord a =>" heißt, daß a nicht ein völlig beliebiger Typ sein kann, sondern eine Instanz der Klasse Ord sein muß. Ist ein Typ a eine Instanz dieser Klasse, dann kann man zwischen zwei Werten vom Typ a Funktionen wie <, >, min, max, ... anwenden, d.h. es herrscht eine Ordnung über allen Elementen des Typs a. Die allermeisten Standardtypen in Haskell sind Instanzen der Klasse Ord, also Int, Float, ..., auch Listen und Tupel.


Viele Grüße,

Siracusa
Zum Seitenanfang