• [^] # Re: Méconnaissance

    Posté par . En réponse au journal Compilateur et Monad Reader. Évalué à 2.

    La monade reader est un artifice Haskellien pour palier aux restrictions sur les effets de bords. Elle ne sert rigoureusement a rien en caml.

    D'accord, encore un problème de communication de ma part ! Je ne veux pas forcer l'utilisation de cette méthode en OCaml. Voilà ce qui se passe :

    1. J'ai un problème avec un contexte
    2. Pour simplifier la lecture, l'écriture, la maintenance de mon code je le passe en argument des fonctions (même si elles ne demandent qu'un sous-ensemble des informations du contexte)
    3. Je constate que toutes les fonctions ou presque sont donc de la forme f ctx ... =
    4. Je remarque qu'en haskell ce paradigme aurait permis d'éviter de passer explicitement le contexte
    5. J'essaye de l'appliquer pour constater que c'est vraiment lourd (même si je n'y ai pas mis toute ma volonté, en utilisant des bibliothèques et extensions de syntaxes pour palier à ce problème)

    Juste pour préciser, mon contexte est clairement modifiable (compteur de variables sur la pile par exemple) et que mes fonctions sont tout sauf pures (printf). Donc je ne vois pas en quoi l'impératif a un rapport avec ça : au contraire, en haskell, il faut utiliser ReaderT ctx IO pour pouvoir faire ce que je veux (ce qui devient déjà plus lourd).

    Donc une fois de plus, hors sujet.