J'essaye d'écrire une fonction Great Divisor commune en haskell. C'est ce que j'ai jusqu'à présent:Erreur d'analyse d'erreur haskell sur l'entrée '|'
gcd1 :: Int -> Int -> Int
gcd1 a b
| a == 0 = b
| b == 0 = a
| otherwise = gcd (mod a b)
Lorsque j'essaie de compiler, j'obtiens cette erreur. J'ai lu comment haskell utilise l'espace blanc pour déterminer où une déclaration de fonctions commence et où le corps commence, mais je continue d'essayer avec une quantité différente d'espaces et d'obtenir la même erreur. Y a-t-il quelque chose qui me manque?
devinez - vous mélangez des onglets et des espaces? - Allumez '-Wall' -Il devrait y avoir un avertissement à ce sujet ou faire une recherche et remplacer' s/\ t// g' juste pour être sûr – epsilonhalbe
Je l'ai mis dans un fichier + un 'où gcd = undefined' et il compilé sans aucun problème – epsilonhalbe