Есть ли рекомендации по использованию строгости в Haskell?
Например, я смотрел библиотеку tagsoup. Они имеют одну из своих структур данных, определенных следующим образом:
data Tag str
= TagOpen str [Attribute str]
| TagClose str
| TagText str
| TagComment str
| TagWarning str
| TagPosition !Row !Column
type Row = Int
type Column = Int
Итак, какой именно фактор они решают, что TagPosition
должен быть строгим? Есть ли рекомендации для этого?