Thanks for the help. After working it out, I just figured out that the reason why the second axiom isn't fulfilled by the m-zero above is this part in m- bind: ((product-fn product) new-state))))))
product-fn, which in the second axiom's case is (fn [x] m-zero), gets called and becomes m-zero, which is in turn called on new-state, not the old state. I cannot figure out at all, though, what m-zero *is* valid under both axioms. Now I don't see how it's simply possible at all—are there monads for which there is no value of m-zero, and is this one of them? On Nov 21, 9:02 pm, jim <jim.d...@gmail.com> wrote: > Glad you found that tutorial useful. I had to run this morning, so I > couldn't really reply. I'll try to read your post more closely > tomorrow and see if I can offer any useful insight. > > Jim -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en