
After quite a bit of work and other such stuff, I pretty much totally rewrote my previous IRC bot and instead updated it from v0.1 to v0.3. You may wonder where 0.2 went; so do I. This is basically an entire rewrite (I threw the first one out.) Now all code can be dynamically hot-swapped via the techniques described in Don's Yi paper. This can happen across multiple servers and as servers are taken down and the like. All code swaps near flawlessly, and even after the initial mechanism was working, the bot ran for quite a while with a good amount of success. I didn't plan to release it in this state, however, with it's dependencies on hs-plugins (which is ghc 6.6 only as of right now,) and my recent installation of GHC 6.8.1, I can't work on it because apparently although both versions appear to be installed, it seems as if ghc-6.6.1 is picking up configuration and package info from 6.8.1 (and therefore ghc-6.6.1 tells me it can't find packages like irc and plugins, although 'ghc-pkg-6.6.1 list' obviously shows they exist.) I also can't work on this on my OpenBSD box which only has 6.6.1, due to some arcane error with hs-plugins (can't find the __errno symbol, I believe.) So because of that, development is temporarily stalled and if you want to test it, you'll need 6.6.1 installed and working properly. I don't think this would have been *too* far from the actual, official release though. At this point I only planned minor tweaks and its release was pretty inevitable anyway. You can get a tarball from hackage: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/infinity-0.3 The darcs repository is here: http://code.haskell.org/infinity/src/ Personally, it was real fun to work on this thing. I wrote almost all the base code for plugins, and for the Net and Monitor to use before the bot ever made its first connection, and a lot of it seemed to just piece together really easily. The code is undeniably cleaner and more extensible than the previous 0.1 code, but I still feel by most standards it's somewhat cluttered, so if anybody here would like to give any comments just from reading the source, that'd be pretty awesome. Until I can continue to work on it (whether hs-plugins is available for 6.8.1 or I get another box with 6.6.1 installed,) this will be considered the stable version by my definition, and all patches are of course welcome. darcs send austin at youareinferior dot net. Criticism is advised. -- - Austin
participants (1)
-
Austin Seipp