В haskell: Что означает: +: среднее значение в определении типа данных?

Это определение для нового типа данных:

data Total a = Total a :+: Total a 
              |...

Что означает: +: означает определение этого типа?

Ответ 1

Это конструктор данных, записанный в форме infix. У вас может быть оператор как конструктор, если он начинается с :.