2

Здравствуйте! Есть составной тип данный MemberStat, в нем может быть много полей. Мне нужно инициализировать все поля данного типа нулями.

data MembersStat = MembersStat { hiddenStat      
                                ,deactivatedStat     
                                ,workStat       
                                ,schoolStat       
                                ,universityStat 
                                ,notFilledStat :: Int

                           } deriving (Show)

В данный момент делаю так:

emptyStat ::MembersStat
emptyStat = MembersStat {hiddenStat      = 0
                        ,deactivatedStat = 0 
                        ,workStat        = 0
                        ,schoolStat      = 0
                        ,universityStat  = 0
                        ,notMaried       = 0
                        ,notFilledStat   = 0

                    } 

Но было бы удобнее записать как-то так:

emptyStat :: MembersStat
empytStat = MembersStat {0}

Есть ли способ автоматически инициализировать поля нулями, без явной установки значения каждому полю?

1 Answers1

1

Решил вопрос вот таким образом

 emptyStat :: MembersStat 
 emptyStat = empty