An anonymous BBS (textboard) written in R5RS Scheme
bbs.scm is a 2ch
clone with the following features:
One newline is a line break (<BR>), two or more newlines will start a new paragraph.
|link to post >>7||link to post >>7|
;;;This is a block of code
((lambda (f) (f f))
(lambda (f) (h (lambda (x) ((f f) x))))))
;;;This is a block of code (lambda (h) ((lambda (f) (f f)) (lambda (f) (h (lambda (x) ((f f) x))))))
If you'd like to, you can also visit this website anonymously via i2p: textboard.i2p
Check the first draft of this program at gitlab. It was written in the hurry of a lone hackathon, therefore some refactoring is needed before the release of a tarball.
/prog/ was a textboard about ``programming'', hosted at world4ch.org and later dis.4chan.org. It was an odd and fascinating place that went mostly unmoderated for years. Unfortunately the owners were made to remember its existence thanks to imbecilic spammers; and without consideration for the small community that inhabited the place, the formers decided to pull the plug on a sad day of July 2014.
If you weren't lucky enough to have been a part of it, an archive of all the posts is available at archive.org. There's a search engine for this archive which has also been entirely restored as web pages at tinychan.org.
Back then, a somewhat recurrent joke was that the BBS script,
shiichan, should be rewritten in Scheme. I'm not aware this task was ever completed. Well, it is now. For the sake of it. Another motivation was to write some real world software in Scheme: beside implementations you won't find a lot of Scheme code in the wild. This is especially true for MIT Scheme. So, however trivial this program is, its merits are its mere existence and the fact it's been deployed.
If you're interested in the history of textboards as a whole, here are a few interesting reads:
Here's a more comprehensive list.
SchemeBBS is written in MIT/GNU Scheme, Nginx is used as a reverse proxy and the whole system runs on FreeBSD. There's no database, messages are stored as Scheme objects in plain files. This stack is lovely. Nice icons too.
Listening to this tune will make you enjoy writing Scheme code.