Je voudrais écrire une fonction qui retourne deux listes dans Elm mais je rencontre des problèmes. Il semble que le compilateur ne peut pas correspondre aux types de la liste vide []
.Retour d'un tuple de listes de la fonction
import Html exposing (text)
main =
let
(a, b) = genList
in
text "Hello"
genList: List Float List Float
genList =
([], [])
Les erreurs du compilateur sont les suivantes:
Detected errors in 1 module.
-- TYPE MISMATCH ---------------------------------------------------------------
`genList` is being used in an unexpected way.
6| (a, b) = genList
^^^^^^^
Based on its definition, `genList` has this type:
List Float List Float
But you are trying to use it as:
(a, b)
-- TYPE MISMATCH ---------------------------------------------------------------
The definition of `genList` does not match its type annotation.
11| genList: List Float List Float
12| genList =
13| ([], [])
The type annotation for `genList` says it is a:
List Float List Float
But the definition (shown above) is a:
(List a, List b)
Je n'ai trouvé aucune façon de donner un indice de type pour la liste vide. Vérification de la documentation, il ne va pas en profondeur: https://guide.elm-lang.org/core_language.html http://elm-lang.org/docs/syntax#functions