Does anyone have any advice about how I can fast track my understanding of what these types of algorithms mean:


I don't want to have to sit 3 years of maths but is there anything I can do for this to make more sense?


closed as primarily opinion-based by Raphael Jul 25 '14 at 9:37

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    $\begingroup$ This is impossible to answer without more knowledge, and even then the answer would most likely be only useful for you. That does not make this a good question for SE as a platform. I recommend you drop by in Computer Science Chat which is more suited for this kind of issue. $\endgroup$ – Raphael Jul 25 '14 at 9:38

I wouldn't have said they were algorithms per se, more a collection of transformations.

If you want to get a theoretical viewpoint on monads, I'd suggest picking up a category theory textbook. You don't need to do "3 years of maths" to understand one, just some set theory (probably) and some dedication.

On the other hand, if you'd prefer a practical handle, I'd learn the Haskell programming language, which uses monads extensively to represent certain types of side-effects. "Learn You a Haskell" is very good. Try and avoid the infamous "monad tutorials" which inevitably over-simplify in order to produce an analogy. I think just reading the monad typeclass, then looking at examples is probably the best advice.


Not the answer you're looking for? Browse other questions tagged or ask your own question.