Sigo con algún problema en el ejercicio en referencia. Ejemplificando:
ex1 = text "Hola"
ex2 = ex1 <-> ex1
ex3 = list [ex1, ex1]
ex4 = ex2 <+> ex2
ex5 = ex3 <+> ex3
Mirando el html los valores de cada expresión deberían ser:
ex1 = 1
ex2 = ex3 = 2
ex4 = 3
ex5 = 4
Es decir, el valor de retorno de h1 <+> h2 no solo depende de los valores (enteros) de h1 y h2, si no que también, depende de si h1 o h2 son listas. La única manera que se me ocurre de solucionarlo, es que las funciones de la parte c devuelvan algo mas que un entero.