WEB Weavings!

This page is dedicated to the WEBPerl programming metalanguage, an implementation of Don Knuth's WEB programming/documenting language that takes into account the oddities of Perl. While there's no big major tutorials or helpful information here yet, here's the source to WEBPerl and a few programs written in it. Use tangle and weave just like Knuth's originals. Have a look at Knuth's book Literate Programming for details of the philosophy behind what's going on here.

The tex-archive has Knuth's original documents and sources in this directory. You'll need his webmac.tex file which contains all the macros for formatting the programs, although these should come with a standard TeX distribution. Most of them will also have binaries of weave and tangle pre-built.

Literate Programming FAQ
The Literate Programming Library


The WEBPerl Source

Please have a look at it, try it, break it and tell me about when it doesn't work or if you've got any suggestions. But first, of course, view the beta-report so you're not giving me old news.

If nothing else, please have a look at the .dvi files, and see if you're convinced that's how Perl really ought to look.


News

Done it! New versions uploaded 08.07.99. A beta release of The WEBPerl book is availabe as compressed PostScript

Oh, and for vim users, here's a WEBPerl syntax mode.
Tangle version 2 is complete, and can be downloaded as tangle2.pl - You won't get very far without this one. This takes a web file, and turns it into a perl script. At the moment, this only works on Unix systems, but I'm getting there.
tangle2.web - The source to the above.
weave3.web - Source to the weave document formatter. Turns a web file into LaTeX (or any other formatter) source, with full table of contents and variable index. This is NOT an official release, there are still some things missing.
weave3.dvi - Weave documentation. Isn't it fun running programs on themselves? :-)
tangle2.dvi - Tangle documentation.


Some WEBPerl programs

spamtrap.web - A spam-trapper.
recurse.web - A dead-simple recursive-descent parser.
ircproxy.web - An IRC proxy. Use this if you know what it is.
For wooses: spamtrap.pl - The program file - it won't be pretty.
spamtrap.dvi - The documentation.

recurse.pl - Likewise.
Notice that the downloadable Perl scripts presented here are compiled on the fly using a modified version of tangle which takes file names via the CGI.
Here is the source to that - autotangle.web


19iii99SPC