[Haskell-cafe] Lambdabot
Daniel Fischer
daniel.is.fischer at web.de
Fri Jun 22 14:10:53 EDT 2007
Greetings,
now I have a working plugins package, I can refocus on my lambdabot problem.
Let me recap:
In Lib/Parser.hs, as_name &c are defined
#if __GLASGOW_HASKELL__ > 606,
however ghc-6.6.1 defines that as 606,
so to go through the build, I had to change the '>' to '>='.
Is that a bad idea? (otherwise that should be changed in Parser.ly/.hs)
Next, in scripts/ShowQ.hs, there is defined an
instance (Arbitrary a) => Arbitrary (Maybe a),
but such an instance already is defined in Test.QuickCheck, so I commented the
one in ShowQ out (after the build died there once). That probably should be
fixed in the darcs repo.
As anything of the above stupid/dangerous?
Okay, so building succeeds without complaints, but then
$ ./lambdabot
Initialising plugins ................Speicherzugriffsfehler
Changing BotPP so that it created a persisting copy of its output, I found out
what modulesInfo does, then, letting ircInstallModule produce debugging
output, I located the evildoers.
lambdabot segfaulted when installing
Fact
Haddock
Quote
Source
Todo
Where
What's special about them?
I.e., why did they cause a segfault and the others not?
And, how could I build a lambdabot _with_ them (though I'm not sure, I'll
actually want them, but I might).
Without these, I now have an apparently working lambdabot, well, not properly
working.
First time I started it, all seemed well, but from then on:
$ ./lambdabot
Initialising plugins ..................................sending message to
bogus server: IrcMessage {msgServer = "freenode", msgLBName =
"urk!<outputmessage>", msgPrefix = "", msgCommand = "NAMES", msgParams =
[""]}
............... done.
Main: caught (and ignoring) IRCRaised Data.ByteString.index: index too large:
0, length = 0
lambdabot> > 3+7
Main: caught (and ignoring) IRCRaised Data.ByteString.index: index too large:
0, length = 0
10
lambdabot>
The bogus message thing also appeared the first time, I hope this is meant to
be so.
But what about the ByteString.index exception?
Where might that come from?
How to get rid of it?
Finally, is there a tutorial/manual for using lambdabot?
Thanks for any help,
Daniel
More information about the Haskell-Cafe
mailing list