я нашел себя писать такого рода вещи:Элегантный способ написать шаблоны
myFnc (MyDataType0 x y z) = someFunction0 (MyDataType0 x y z)
myFnc (MyDataType1 x y) = someFunction1 (MyDataType1 x y)
...
т.е. мне нужно сопоставление с образцом некоторых конструкторах данных, а затем использовать весь экземпляр. Мой текущий подход - сопоставить тип данных, получить все его поля, а затем восстановить его в теле функции. Есть ли способ лучше?
Не вы лучше с 'myFnc (MyDataType0 х у г) = SomeFunction х у z' и т.д.? –
@TomEllis, Ну, я могу переписать его, но я не вижу причин для этого. Логически, 'someFunction0' должен брать объекты типа' MyDataType0'. – Mark
Но 'MyDataType0' не является типом, это конструктор. Что делает 'someFunction0', когда передано значение конструктора' MyDataType1'? –