Lambdabot

From Esolang
Jump to navigation Jump to search

Lambdabot is an IRC bot used in the #esoteric IRC channel and several other channels on the freenode network. Its most notable feature is that it evaluates Haskell expressions in a sandbox interpreter. int-e currently hosts lambdabot.

Lambdabot's IRC nick is lambdabot. It can be invoked in channels or private message. Commands are invoked by the @ or ? prefix. Shortcut invocation prefixes are > , equivalent to @run, to evaluate a Haskell expression; as well as a few shortcuts that start with :. In channels, lambdabot prints one line of output for each command, and that one line is truncated to a very short limit. In private message, lambdabot is willing to print longer lines, and you can use the @more command to get additional lines out output.

Messages

Lambdabot is sometimes used to send messages to people in the #esoteric community. The @tell command sends a message; its argument is an IRC nick followed by a message. The @ask command also works. The @messages command reads your messages and immediately forgets them: if you are disconnected from the IRC server just after you issue this command, your messages are lost. A few users don't want to receive lambdabot messages. You can ask who they are by saying `dontaskdonttelllist to HackEso.

Note that the freenode IRC server also has an unrelated message passing service called MemoServ. The mailboxes for these messages are tied to accounts registered to NickServ, rather than to IRC nicks. Use the MemoServ HELP IRC command to get information about that service.

Haskell-related commands

  • TODO run define type kind
  • TODO hoogle
  • TODO pl unpl
  • TODO djinn

Commands

The following is a list of most commands of lambdabot. Any of these can be equivalently invoked with the @ or ? prefix.

activity bf check @ ? . compose dice roll dict-help all-dicts bouvier cide devils easton elements foldoc gazetteer hitchcock jargon thesaurus vera wn world02 djinn djinn-add djinn-del djinn-env djinn-names djinn-clr djinn-ver eval choose dummy bug id show wiki paste docs learn haskellers botsnack get-shapr shootout faq googleit hackage thanks thx thank you ping tic-tac-toe elite leet l33t 1337 run let define letlpaste undefine free freshname index help hoogle hoogle+ instances instances-importing karma karma+ karma- karma-all time localtime localtime-reply metar more oeis sequence pointless pl pl-resume pointful pointy repoint unpointless unpl unpf poll-list poll-show poll-add choice-add vote poll-result poll-close poll-remove pretty quote remember forget ghc fortune yow arr yarr keal b52s pinky brain palomer girl19 v yhjulwwiefzojcbxybbruweejw protontorpedo nixon farber google gsite gwiki slap smack src spell spell-all listchans listmodules listservers list echo uptime tell ask messages messages-loud messages? clear-messages auto-reply auto-reply? clear-auto-reply ticker bid todo todo-add set-topic get-topic unshift-topic queue-topic shift-topic push-topic pop-topic dequeue-topic clear-topic type kind undo do unlambda unmtl version where url what where+