I don't program in haskell and every google search I do explains monads in terms of "Maybe Monads" and the examples are written in Haskell.

I don't fucking know Haskell and none of the examples may any sense with the maybe examples.

Can someone in laymen terms describe what

>Monads

>Bind operators

>Functors

>Type Constructors

are?

I have a math background (but not category theory), so can use some basic math to explain this shit.

My previous comment got deleted (an anon gave a good response) but... this is what I understand

>>53734130

Thanks for the thorough explanation, but none of that means anything to me. I don't know Haskell.

Can you explain what this shit means in a non-Haskell way?

I read that 'functors' are 'containers' and when you apply an operation to it, you unwrap the 'container' and apply the operation to the individual functions then 'wrap' the results back into the 'container'. So, like if you wanted to apply the binary operation of multiplication and the container type was type list and elements were int, then you'd apply multiplication to the ints and put it back into the list. Is this shit accurate? How do you formalize what a functor is (without using haskell)?

I know what monoids are... but have no idea how they or anything else applies to define the monad.

So TL;DR can you fucking tell me what a monad/bind operator/type constructor is WITHOUT using haskell?

Thanks anon