{"push_id":991858788,"size":1,"distinct_size":1,"ref":"refs/heads/patch-1","head":"ddb84285e50ab454e27ad34513f5986fa4517fda","before":"289a8cece51b0fa3ff096631ad94e3cf3a9582b9","commits":[{"sha":"ddb84285e50ab454e27ad34513f5986fa4517fda","author":{"email":"d164c879dd415353db488e247cc30b6e92f3e4fd@gmail.com","name":"matthieubulte"},"message":"Make the code more idiomatic\n\nActual changes:\r\n+ replace the `return =<< m` by `m`, this is actually one of the laws that a monad instance should respect (https://wiki.haskell.org/Monad_laws right identity)\r\n+ use applicative style of function application, replacing do blocks with applicative application.\r\n```haskell\r\ndo\r\n    a <- x\r\n    b <- y\r\n    return (f a b)\r\n```\r\nbecomes `f <$> x <*> y`","distinct":true,"url":"https://api.github.com/repos/matthieubulte/livecoding-haskell/commits/ddb84285e50ab454e27ad34513f5986fa4517fda"}]}