data Date = Datum Year Month Day   
type Year = Int   
data Month = Jan | Feb | Mar | ...   
type Day = Int  
  

Naiver Weg:

day :: Date -> Day   
day (Datum y m d) = d   
  
month :: Date -> Month   
month (Datum y m d) = m  

Record Syntax!

data Date = Datum Year Month Day   
  
zu   
  
data Date = Datum { year  :: Year   
				  , month :: Month   
				  , day   :: Day  }  
  
> month (Datum 2019 Nov 19)  
Nov  
> :t month   
month :: Date -> Month  

beliebige Reihenfolge der Daten bei der Konstruktion:

> Datum 2019 Nov 19 == Datum {day=19, month=Nov, year=2019}   
True