Question

Je travaille à travers le Programmation Clojure livre. Tout en expliquant alter Et le STM, ils disent que si, lors d'un alter, Clojure détecte une modification de la reflète de l'extérieur de la transaction, elle remaniera la transaction avec la nouvelle valeur. Si tel est le cas, j'imagine que la fonction de mise à jour dans laquelle vous transmettez doit être pure, mais ce n'est pas indiqué dans les documents (et c'est dans d'autres situations similaires).

Alors, mon hypothèse est-elle correcte? Sinon, comment le STM applique-t-il la fonction? S'il est correct, est-il le cas que vous ne pouvez pas compter sur les documents pour vous dire quand vous pouvez avoir des effets secondaires, et quand vous ne pouvez pas?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top