Je suis intéressé par la bibliothèque de haskell réactif-banane FRP (Functional Reactive Programming). Que recommanderiez-vous à un novice de lire pour comprendre la théorie de la banane réactive? Si j'ai bien compris, des progrès ont été réalisés dans ce domaine et différentes bibliothèques de PRF utilisent des approches différentes. Je ne pense donc pas qu'un document de PRF suffirait.
Réponses
Trop de publicités?Malheureusement, je n'ai pas écrit une documentation complète ou encore des tutoriels, principalement parce que le réactif de banane de la bibliothèque est encore un peu dans le flux.
Cela signifie que, pour le moment, vous aurez à comprendre les choses par vous-même à partir de sources diverses, soutenu par une assez forte Haskell connaissances. Ce que je peux faire, c'est de lister les différentes sources et inspirations.
-
La Documentation disponible réactif-banane directement
- Une courte introduction - principalement des réponses à la question "Pourquoi dois-je savoir au sujet de Foncteurs Applicatifs afin de comprendre reactve-banane?"
- Tutoriel diapositives - expliquer et visualiser les notions de Comportement et de l'Événement
- Référence de l'API
- Exemple de Code - Les exemples de commencer simple et sont vraiment utiles pour la compréhension de la bibliothèque.
- Mise en œuvre du modèle - Regardez le code source. Utile pour comprendre les détails du modèle de programmation.
-
Depuis réactif-la banane est basé sur Conal Elliott travail, ses écrits sont une bonne source
- "Fonctionnel Réactif de l'Animation" - Général, bien qu'un peu désuet aperçu de FRP.
- "Déclarative de programmation orienté événement" - Pratique, exemple qui démontre l'utilité de PRF pour la programmation GUI. Excellente introduction à la programmation générale de la philosophie.
- "Push-pull fonctionnel réactif de programmation" - Bonne lecture pour la compréhension de la façon dont le modèle est associé à un API en termes de applicatives et d'autres foncteurs.
Il y a essentiellement deux sources:
- Conal Elliott papier "Simplement Efficace Réactivité Fonctionnelle" (ainsi que Conal autres travaux qui ont conduit à ce document).
- Apfelmus blog. L'article "Réactif de la Banane et de l'Essence de PRF" est probablement un bon point de départ.
La conception et la sémantique de réactif-banane s'inspirent fortement de Conal du papier et de son "réactive" de la bibliothèque (depuis réactif-banane-0.2). Discussion sur beaucoup de le raisonnement derrière cela, ainsi que les différences entre les bibliothèques, est dans les commentaires sur Apfelmus blog. Malheureusement, "réactif" a un mauvais comportement associé à son "switcher" de la fonction, de sorte que c'était à gauche en sortant de réactif de banane. Il y a eu beaucoup de recherches sur la nature de ce problème et comment le résoudre, et il semble que réactif-banane-0.5 peuvent introduire une version de "switcher".
Ce n’est pas une banane réactive, mais j’ai trouvé cette série utile pour comprendre le PRF, en construisant à partir de rien un petit jeu de pong.
https://github.com/leonidas/codeblog/blob/master/2012/2012-01-08-streams-coroutines.md https://github.com/leonidas/codeblog/blob/master/2012/2012-01 -17-declarative-game-logic-afrp.md
J'ai blogué sur le PRF et la banane réactive. Jetez un coup d'oeil ici et voyez si cela peut être utile:
http://alfredodinapoli.wordpress.com/2011/12/24/functional-reactive-programming-kick-starter-guide/
HTH,
UNE.
Récemment, j'ai porté mon 'streaming' package 'réactif-banane". Le package est conçu pour le traitement en temps réel des messages MIDI, par exemple, pour générer de l'accompagnement, des jeux musicaux et certains des effets amusants.
http://code.haskell.org/~thielema/réactif-balsa/
Comment ai-je commencer à apprendre réactif-banane? Je viens de demander à l'auteur de l'emballage et il a gentiment m'a aidé à faire le premier pas. Après avoir pris les premières mesures, j'ai trouvé l'Aiglefin de la documentation du package très utile. Maintenant, vous pouvez choisir entre l'auteur du package et à moi, de vous donner les premiers conseils sur la façon de démarrer avec le réactif de banane. :-)