J'apprends le haskell. Actuellement à travers 99 questions, un peu coincé sur # 7:haskell: 99 questions # 7: liste hétérogène
Problème 7 (**) Aplatir une structure de liste imbriquée.
Transformez une liste en conservant éventuellement les listes en tant qu'éléments dans une liste «plate» en remplaçant chaque liste par ses éléments (récursivement).
Exemple en Haskell:
*Main> flatten (Elem 5) [5] *Main> flatten (List [Elem 1, List [Elem 2, List [Elem 3, Elem 4], Elem 5]]) [1,2,3,4,5] *Main> flatten (List []) []
Où est-ce Elem
et List
viennent? Que dois-je faire pour pouvoir les utiliser dans mon programme? (Ou est-ce que la question suppose que je dois définir un nouveau type pour ceux-ci - si c'est la réponse je vais aller et relire cette section du tutoriel ...)
Notez que ListType est vraiment un mauvais nom. C'est en fait un arbre. – Martijn