Kommutative Funktion in Haskell

7

Ich möchte eine Funktion in haskell schreiben, die nichts dagegen hat, in welcher Reihenfolge ich ihr Argument vorlege, zum Beispiel möchte ich diese beiden Funktionen vereinheitlichen

%Vor%

durch eine Funktion "reproduzieren".

    
Dilawar 03.10.2011, 16:34
quelle

4 Antworten

12

Sie können dies mithilfe einer Klasse mit mehreren Parametern tun.

%Vor%

Allerdings bin ich neugierig auf warum Sie das tun möchten.

    
hammar 03.10.2011, 16:44
quelle
5

Vielleicht möchten Sie Ihre Argumente in einen Datentyp packen und Datensätze verwenden (siehe "Markierte Felder") stattdessen?

%Vor%

Allerdings teile ich @ Hammars Neugier.

    
ShiDoiSi 03.10.2011 16:54
quelle
2

Ich habe über so etwas nachgedacht, was eine Ausnahme darstellt, wenn beide Erwachsenen vom gleichen Geschlecht sind:

%Vor%     
Jeena 03.10.2011 16:58
quelle
1

Ich empfehle dringend, die Reihenfolge zu fixieren, zuerst Male und dann Female zu sagen oder einen "Heirat" -Datentyp wie in ShiDoSis Lösung zu erstellen.

Überprüfen Sie jedoch den Abschnitt "Sitzungsarten und Dualität", S. 12 in der Veröffentlichung " Spaß mit Typ-Funktionen " - Ich denke das ist ein gutes Beispiel, wo Sie Typen in symmetrischen Paaren männlich-weiblich gekoppelt brauchen.

    
sdcvvc 03.10.2011 18:17
quelle

Tags und Links