Noem de 4 structureringsconcepten met behulp waarvan we samengestelde typen kunnen karakteriseren en herken de verschillende samengestelde typen uit Java en Haskell

  • 1. cartesische producten: bijvoorbeeld een set van ale paren van (x,y), SxT={(x,y)|xeS,yeT}. Bijvoorbeeld S={u,v} en T={a,b,c} dan is SxT={(u,a),(u,b),(u,c),(v,a),(v,b),(v,c)}. De kardinaliteit is 2x3=6
    2. mappings: S->T staat voor alle mappings van S naar T. De kardinaliteit van S->T is #(S->T)=(#T)^(#S)
    3. disjoint unions: Hierbij wordt een waarde gekozen van 1 of meerdere (meestal verschillende) sets. S+T. #(S+T)=#S+#T
    4. recursieve typen: Is een type die gedefinieerd wordt in termen van zichzelf. 2 Gebruikelijke recurcieve typen zijn lists (een sequence van waarden) en strings (een sequence van karaketers).

    Rapporteer Plaats commentaar