Questions marquées «haskell»

Haskell est un langage de programmation fonctionnel comprenant un typage statique fort, une évaluation paresseuse, un support étendu du parallélisme et de la concurrence, et des capacités d'abstraction uniques.

1416
Qu'est-ce qu'une monade?

Après avoir brièvement examiné Haskell récemment, quelle serait une explication brève, succincte et pratique de ce qu'est essentiellement une monade? J'ai trouvé que la plupart des explications que j'ai rencontrées étaient assez inaccessibles et manquaient de détails

755
Premiers pas avec Haskell

Les réponses à cette question sont un effort communautaire . Modifiez les réponses existantes pour améliorer ce post. Il n'accepte pas actuellement de nouvelles réponses ou interactions. Pendant quelques jours, j'ai essayé de faire le tour du paradigme de la programmation fonctionnelle dans...

392
Transitivité de l'auto-spécialisation en GHC

De la documentation pour GHC 7.6: [V] ous n'avez souvent même pas besoin du pragma SPECIALIZE en premier lieu. Lors de la compilation d'un module M, l'optimiseur de GHC (avec -O) considère automatiquement chaque fonction surchargée de niveau supérieur déclarée dans M, et la spécialise pour les...

369
Que sont les monades gratuites?

Je l' ai vu le terme gratuit Monad pop - up chaque maintenant et puis pendant un certain temps, mais tout le monde semble juste d'utiliser / en discuter sans donner une explication de ce qu'ils sont. Alors: que sont les monades gratuites? (Je dirais que je connais les monades et les bases de...

367
Pourquoi avons-nous besoin de monades?

À mon humble avis, les réponses à la fameuse question "Qu'est-ce qu'une monade?" , en particulier les plus votés, essayez d'expliquer ce qu'est une monade sans expliquer clairement pourquoi les monades sont vraiment nécessaires . Peut-on l'expliquer comme la solution à un

322
Techniques de traçage des contraintes

Voici le scénario: j'ai écrit du code avec une signature de type et GHC ne peut pas déduire x ~ y pour certains xet y. Vous pouvez généralement lancer un os GHC et simplement ajouter l'isomorphisme aux contraintes de fonction, mais c'est une mauvaise idée pour plusieurs raisons: Il ne met pas...

312
Que fait le mot-clé `forall` dans Haskell / GHC?

Je commence à comprendre comment le forallmot-clé est utilisé dans les soi-disant "types existentiels" comme ceci: data ShowBox = forall s. Show s => SB s Ce n'est qu'un sous-ensemble, cependant, de la façon dont il forallest utilisé et je ne peux tout simplement pas me concentrer sur son...