you are viewing a single comment's thread
view the rest of the comments
[–] 2 points 1 year ago (3 children)

They're just an abstraction to model and contain implicits, for instance like IO (filesystems) or program state. Regular functions should produce the same output for the same input, if they do not you have implicit effects. You can think of it kinda like a class, or a context, or a module which has some functions to help work with the implicit effect. Central then is also that each such class, context, or module can be composed with others of the same kind, maintaining a lineage of the implicit effect.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 1 point 1 year ago

    If I squint I can see what you mean, but it can apply to many different concepts (effects, capabilities, etc) and not just monads. Monads have a very specific and actually quite simple definition.

  • source
  • parent