« first day (155 days earlier)      last day (1808 days later) » 

01:06
At the risk of sounding like an idiot, what's a monad?
 
10 hours later…
BMO
BMO
11:15
@Nitrodon: An applicative functor that can also do join :: Monad m => m (m a) -> m a ;)
Better answer: In Haskell it's an abstract concept like Enum, Monoid etc, just another type class which provides some functions and is expected (not enforced) to satisfy some laws.
The most important ones are return :: a -> m a and bind :: m a -> (a -> m b) -> m b which is called (>>=).. and since it has to be a Functor and Applicative you also get fmap :: m (a -> b) -> m a -> m b and ap :: m (a -> b) -> m a -> m b.
 
2 hours later…
12:51
@Nitrodon I recommend reading wiki.haskell.org/Typeclassopedia
2
(and ignoring all blog posts that try to come up with analogies)
13:49
Is there a built-in that is equivalent to (last.) . takeWhile?
14:08
@user202729 None that I am aware of. Are you asking for golfing? In that case takeWhile can often be replaced by fst.span, and something like snd(span f s)!!0 might be even shorter.

« first day (155 days earlier)      last day (1808 days later) »