.TH sweb 1 .\" $Id: sweb.1,v 2.0 1994/02/25 13:43:28 ramsdell Exp $ .SH NAME sweb \- Simple support for literate programming in Lisp. .SH SYNOPSIS .B sweb [-stuvwx] [input_file [output_file]] .SH DESCRIPTION A SchemeWEB file is a Lisp source file which contains code sections and comment sections, but each section is identified in a novel way. A code section begins with a line whose first character is a left parenthesis. It continues until a line is found which contains the parenthesis that matches the one which started the code section. The remaining lines of text in the source file are treated as comments. Several operations involving SchemeWEB files are provided by the .B sweb program. .PP The .B \-t option translates a SchemeWEB file into a standard Lisp file. It simply adds an initial semicolon to comment lines that lack them, and passes code sections through unchanged. This process is called tangling the SchemeWEB file. .PP The .B \-w option translates a SchemeWEB file into a LaTeX source file. Text is added to code sections so that LaTeX will print the code verbatim. Comment sections are passed through unchanged except that if the first character of a line is a semicolon, it is excised. This makes it possible to process a SchemeWEB file which has been tangled. This process is called weaving the SchemeWEB file. This is the default action of .B sweb. .PP The .B \-x option weaves a SchemeWEB file as above, except the LaTeX source produced inhibits page breaks in code sections. .PP The .B \-u option translates a Lisp file which has been produced from a SchemeWEB file back into a SchemeWEB file. It simply removes the first semicolon in every line that starts with one as its first character. This process is called untangling a .B sweb produced Lisp file. .PP The .B \-s option tangles a SchemeWEB file and strips all comments from the file. .PP The .B \-v option prints version information. .PP A SchemeWEB file can be stored and distributed as a standard Lisp file by tangling the SchemeWEB file. For the purposes of editing comments, the SchemeWEB file can be recovered by untangling the Lisp file. LaTeX documentation can be generated from both the Lisp file or the SchemeWEB file. .PP SchemeWEB was originally developed for the Scheme dialect of Lisp; however, it became obvious that no changes were required to support most other dialects. SchemeWEB's name reflects its heritage.