consente di dire che abbiamo questo tipo di dichiarazione:di corrispondenza molteplici tipi di dati in una sola volta i costruttori
data D a = A a | B a | C a | D a | E a | F a
e vogliamo definire una funzione su di esso che divide i costruttori di dati in 2 set. Sarebbe bello scrivere qualcosa di simile:
g x | x `is` [A,B,C] = 1
| x `is` [D,E,F] = 2
invece di corrispondenza su ogni costruttore separatamente.
Esiste un modo per raggiungere questo obiettivo? Ho guardato uniplate ma non ho trovato il modo di farlo.
Ho trovato la stessa soluzione. Il problema è con i letterali String. Sarà meglio se potremo confrontarci con '[A, B, C]' come nell'esempio che ho dato. –
@djv: vedere l'aggiornamento. – kennytm
Sta migliorando, ma cosa succede se voglio che funzioni per costruttori con campi numerici diversi? –