Forum Programmation.autre Haskell : IO [Int]

Posté par  .
Étiquettes : aucune
-1
14
avr.
2010
Bonjour,
j'ai un nouveau soucis, par rapport au type IO.
j'ai une fonction shuffle qui mélange une liste donnée (de type [a]) et qui renvoie cette liste mélangée alétoirement (de type IO [a]).
Cependant, je veux utiliser cette fonction shuffle dans une autre fonction (qui ne prend pas de IO [a] en argument mais [a]).
Je voudrais donc en quelque sorte convertir xs :: IO [Integer] en xs :: [Integer] pour ne pas avoir de soucis dans la fonction qui utilise shuffle.

Voici ma fonction shuffle :

shuffle' [] acc = return acc
shuffle' l acc =
do k
let (lead, x:xs) = splitAt k l
shuffle' (lead ++ xs) (x:acc)

shuffle :: [a] -> IO [a]
shuffle l = shuffle' l []

l = shuffle [1..10]

En faisant ":t l" dans ghci j'ai bien : l :: IO [Integer]
je voudrais avoir cette même liste mais de type [Integer]
Merci.
  • # Déjà répondu

    Posté par  (site web personnel) . Évalué à 2.

    • [^] # Re: Déjà répondu... mais l'usine ?

      Posté par  . Évalué à 1.

      Oui :: je me suis aussi amusé avec Haskell GHCI de M$-Microcephalous/linux <-- sorte de blass-fame?

      Non :: Je préfère Concurrent-CLEAN pour 64'000 raisons (-1)

      Mais pour faire quelques petit tests d'apprentissage avec types et inférence de type assez sévères, ghci convient scolairement parlant.

      Les monades auraient comme un arrière-goûts de limaille verte.

      Ils séparent effectivement l'EVEN du HELL mais les calculs de types restent approximativement en vigueur.

      Ben oui, puisque 0 =~ 1 (et reciproquement).

      http://clean.cs.ru.nl/

      Concurrent-CLEAN fonctionne sur GNU/Linux,...
      ...il faut juste souffrir un peu :)


      PS: A part ça je ne sais pas qui a parlé de CAML(otte) et de ces dérivés...
      Mais c'est tout sauf exemplairement "pure" en terme de langages fonctionnelles orthogonaux.
      Quelques manquement en terme de consistance et de complétude syntaxique, sémantique, /etc. (quel dommage) Pourquoi ne pas utiliser le lambda-PHP .... kheu....

      Heureusement, il n'y a pas que les monades dans la fille.

      Le mieux c'est d'éventuellement demander à quelqu'un comme ce Monsieur:

      http://www.math.jussieu.fr/~alp/

      Il semble avoir quelques notions concernant l'incomplétude de l'éventuel morphisme entre Monades informatique et Monoïdes mathématiques aux environs d'une certaines théorie des domaines applicable dans une "non ABC-Machine", mais presque g-Usine.

      :: gaz(_|_) <-- Maibe(usine) or not to B ?

      Prolog: Fête comme si j'avais chuchoté à reculont.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.