esotericbot: Esotericbot is a sophisticated, lightweight IRC bot.

[ bsd3, library, program, web ] [ Propose Tags ]

Esotericbot is a sophisticated, lightweight IRC bot, written in Haskell.

Esotericbot launches sub-processes to respond to commands issued by users over IRC.

Why would you use esotericbot?

For lambdabot-4.2.2.1:

spoon@utensil:~/esotericbot$ ps e v

PID TTY STAT TIME MAJFL TRS DRS RSS %MEM COMMAND

23433 pts/3 Sl+ 0:00 0 8228 84855 33476 1.6 lambdabot

15040 pts5 S+ 0:00 0 2171 28804 3292 0.1 .esotericbot

I'm not insinuating that lambdabot sucks in any way, ( lambdabot is most excellent ) however, my hope is that esotericbot could attain equal functionality through plugins, while maintaining its small memory footprint.

Esotericbot is small ( for Haskell :), designed to run on a server with limited memory - typically running at under 5mb of private memory.

Features:

  • Advanced memory and time management options, utilizing POSIX resource management.

For example, the memory used by all child processes, can be limited - commands be queued until the memory usage has dropped.

  • Privileged channel operator commands ( Currently, can be disabled and enabled by channel operators, to prevent abuse. )

  • Easy to add new plugins. A C library is included to make writing new plugins/adapting programs to be plugins easy.

  • Set up through a configuration file.

  • Multiple channels.

  • Multi-threaded

  • Lightweight, typically running at under 5mb of private memory.

Cons:

  • POSIX memory management, process forking, and chroot means that Esotericbot is POSIX only.

  • Esotericbot is, due to the libraries and extensions used, restricted to being compiled by the Glorious Glasgow Haskell Compiler.

Note: esotericbot comes with several plugins which will be installed into your cabal-bin, and libraries installed into your cabal-lib. Check cabal-bin for brainfuck, unlambda , malbolge, sk and whirl. These will need libplugin and libplugin++ from your cabal-lib to function correctly.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.5, 0.0.6
Dependencies attoparsec, base (>3 && <5), bytestring, containers (>=0.2 && <0.3), directory, fgl, mtl, network, stm, stream-fusion, tuple, unix [details]
License BSD-3-Clause
Author John Morrice <spoon@killersmurf.com>
Maintainer John Morrice <spoon@killersmurf.com>
Category Web
Home page http://www.killersmurf.com/projects/esotericbot
Uploaded by JohnnyMorrice at 2009-06-23T14:32:13Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables esotericbot
Downloads 4728 total (15 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-31 [all 7 reports]