Lambdabot is an IRC bot written over several years by those on the #haskell IRC channel.• Haskell evaluation: /run take 5 [1..] ==> [1,2,3,4,5]
• Asking for a functions type, like GHCi’s :t, using /type
• Using Hoogle: /hoogle [a] -> [a]
• Pointfree refactoring: /pl xs n -> take n xs ==> flip take
• Djinn takes a type signature and constructs a function satisfying it: /djinn (a, b) -> c -> (b, c) ==> f (_, a) b = (a, b)
• Convert do notation to bind notation: /undo do { x <- getLine; print x } ==> getLine >>= x -> print x
• Lambdabot has a huge list of imports. If it can’t find the name of a function you specified, try the fully qualified name. There is no way of importing modules manually.