[racket] For new Racket users

From: Eli Barzilay (eli at barzilay.org)
Date: Mon Aug 29 03:40:22 EDT 2011

8 hours ago, Sam Tobin-Hochstadt wrote:
> On Sun, Aug 28, 2011 at 6:11 PM, Matthias Felleisen
> <matthias at ccs.neu.edu> wrote:
> >
> > Eli, your 'bot' attached as the backend to a wescheme style
> > front-end editor could be the core of such an on-line puzzle
> > site. We could even make it language-agnostic in some ways:
> > racket/base, racket, typed/racket, lazy, algol60, frtime, etc.

I don't see how a bot is related to this -- python challenge web site
doesn't do any evaluation.  It's possible to do something different,
with an on-the-page sandboxed evaluator, but I think that an important
point that is lost is to make you deal with the environment too.  (In
any case, I think that the "pretty picture, I wonder what's next"
factor is even more important.)

> I'm pretty sure that the bot you're thinking of is rudybot [1], by
> Eric Hanchrow, aka offby1.

To clarify: there are two IRC bots around -- one is rudybot which Eric
Hanchrow wrote (and I helped him implement the evaluator
functionality).  I then did a skeleton bot that is much more friendly
for quick extensions etc, but I never bothered adding a sandbox to it
since rudybot is already doing that.  I also never made it really
public, since there might be some code there that shouldn't be public
(for example, I hacked it at some point to kick out spammers, when the
freenode servers were attacked), but if someone is interested making
it publicable, I'll be happy to send the code over.

(BTW, rudybot grew in a kind of an organic way, which makes it much
harder to extend.  With my bot, there's a directory with handler files
which you can edit independently, so implementing different "verbs" is
easy.  (It also reloads the while it's running, which rudybot does to
some more limited extent too.))

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!

Posted on the users mailing list.