У меня есть список троек строк, как это:
mylist = [("a1","a2","a3"), ("b1","b2","b3"), ("c1","c2","c3")]
Фактические строки являются произвольными, за исключением того, что список представляет двоичную функцию, которая отображает первые две строки на третью. Что такое быстрый в вычислительном отношении способ реализации функции
f :: String -> String -> String
так что
f "a1" "a2" == "a3"
f "b1" "b2" == "b3"
f "c1" "c2" == "c3"
А также, есть ли общий способ сделать это с помощью списка кортежей?
Пока я только придумал
f a b = lookUp (a,b) [ ((x,y),z) | (x,y,z) <- mylist ]
Спасибо,
Андре