~williewillus/r16

Racket trick bot
2b83fef8 — Alwinfy 30 days ago
Fix arity mismatch nonsense
I forgot to commit the typo fix...
4c74058d — Alwinfy a month ago
implement IRC-bot message integration

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~williewillus/r16
read/write
git@git.sr.ht:~williewillus/r16

You can also use your local clone with git send-email.

#r16

R16 is a bot for interactive, community-driven code evaluation. It saves snippets of code, which can then be recalled and executed on user-provided input.

Please see the documentation for details.

#History

The concept of a "trick bot" is not new. The authors were introduced to it by K9, a similar Discord bot written in Clojure.

Despite the authors being avid Clojure fans, K9 had several known security problems due to leaky sandboxing in the libraries it used. On the other hand, Racket's sandboxing utilities are much more tightly integrated into the runtime environment. Additionally, the standard Racket installation comes with many more convenient libraries trick authors might want to use.

Thus, R16 was born.

#Name

The R16 name is simply the name "K9", but with "K" shifted to "R" (for "Racket") and the "9" shifted by the same number to "16".

#Usage

  1. Clone this repository
  2. raco pkg install --user --auto --type dir <clone directory>
  3. Initialize a config file (see the docs)
  4. racket <clone_dir>/main.rkt -c config.json

Alternatively, you can raco pkg install r16 and run the bot from the install directory, using raco pkg update to update.

NOTE: Currently privilege checking is broken (racket-cord bug). Therefore, tricks will only be deletable by their creators (unless you edit the save data manually).

#Contributing

#Patches

Email patches to ~williewillus/public-inbox@lists.sr.ht. See git-send-email.io for a guide on the patch workflow. List archives are here.

#Issues

File issues either from the SourceHut web UI, or by emailing ~williewillus/r16@todo.sr.ht.

#Discussion

Discuss in the Racket Discord.