5
<META NAME="description"
6
CONTENT="The FunnelWeb Tutorial Manual. FunnelWeb is a portable
7
free literate programming tool.">
10
CONTENT="funnelweb,FunnelWeb,funnel,web,
11
tutorial,manual,tutorial manual,
12
literate programming,literate,programming,literate-programming,
14
macro,macros,preprocessor,macro preprocessor,
15
software,free,freeware,
16
open source,open,source,gnu,gpl,copyleft,
17
web,development,tool,web tool">
19
<STYLE TYPE="text/css"> <!-- A {text-decoration: none} // --> </STYLE>
20
<TITLE>FunnelWeb Tutorial Manual</TITLE>
23
<BODY BACKGROUND="binary/background.gif"
33
<TD WIDTH="130" VALIGN="top">
34
<IMG SRC="binary/d_clear.gif" ALT="" WIDTH="130" HEIGHT="1"><BR>
39
<A HREF="http://www.ross.net/"
41
onClick="window.open('','rosshome','location,status,menubar,scrollbars,resizable',false).focus(); return true;"
43
<IMG SRC="binary/rossnet_logo.gif"
44
WIDTH="64" HEIGHT="32"
45
BORDER="0" ALT="RossNet"
46
HSPACE="0" VSPACE="1"></A><BR>
49
<A HREF="../index.shtml"
51
onClick="window.open('','funnelweb','location,status,menubar,scrollbars,resizable',false).focus(); return true;"
53
<IMG SRC="binary/linklogo.gif"
54
WIDTH="64" HEIGHT="32"
55
BORDER="0" ALT="FunnelWeb"
56
HSPACE="0" VSPACE="1"></A><BR>
58
<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0><TR><TD BGCOLOR="#000000">
59
<A HREF="../reference/index.html"
60
TARGET="funnelwebreference"
61
onClick="window.open('','funnelwebreference','location,status,menubar,scrollbars,resizable',false).focus(); return true;"
62
><FONT COLOR="#FFFFFF"><B>Reference</B></FONT></A><BR>
64
<A HREF="../developer/index.html"
65
TARGET="funnelwebdeveloper"
66
onClick="window.open('','funnelwebdeveloper','location,status,menubar,scrollbars,resizable',false).focus(); return true;"
67
><FONT COLOR="#FFFFFF"><B>Developer</B></FONT></A><BR>
69
<A HREF="index.html"><FONT COLOR="#FFFFFF"><B>Tutorial</B></FONT></A><BR>
70
<A HREF="intro.html"><FONT COLOR="#FFFFFF">1 Introduction</FONT></A><BR>
71
<A HREF="macro.html"><FONT COLOR="#FFFFFF">2 Macros</FONT></A><BR>
72
<A HREF="type.html"><FONT COLOR="#FFFFFF">3 Typesetting</FONT></A><BR>
73
<A HREF="example.html"><FONT COLOR="#FFFFFF">4 Example</FONT></A><BR>
74
<A HREF="hints.html"><FONT COLOR="#FFFFFF">5 Hints</FONT></A><BR>
75
<A HREF="examples.html"><FONT COLOR="#FFFFFF">6 Examples</FONT></A><BR>
76
<A HREF="web.html"><FONT COLOR="#FFFFFF">7 Webmaking</FONT></A><BR>
79
<A HREF="search.html"><FONT COLOR="#FFFFFF"><B>SEARCH</B></FONT></A><BR>
85
<TD WIDTH="360" VALIGN="top">
90
<A HREF="../reference/index.html"><IMG SRC="binary/title.gif"
91
WIDTH="302" HEIGHT="24"
92
BORDER="0" ALT="FunnelWeb Tutorial Manual"
93
HSPACE="0" VSPACE="0"></A>
95
<P><STRONG><FONT SIZE="4">Version 3.2d (9 Jan 2000) for FunnelWeb V3.2</FONT></STRONG>
97
<P><FONT SIZE="+3">T</FONT>HIS TUTORIAL MANUAL provides a friendly
98
introduction to the FunnelWeb literate programming
101
<P>This Tutorial Manual does not provide a definitive
102
description of FunnelWeb, so if you have a specific technical
103
question, you should refer to the <A HREF="../reference/index.html"
104
TARGET="funnelwebreference"
105
onClick="window.open('','funnelwebreference','location,status,menubar,scrollbars,resizable',false).focus(); return true;"
106
>FunnelWeb Reference Manual</A>,
107
which is definitive. To perform a keyword search
108
of the Reference Manual and/or this Tutorial manual, click
109
on SEARCH in the margin.
119
<P><A HREF="intro.html"><B>1 Introduction</B></A><BR>
125
<A HREF="intro_what.html">1.1 What Is Literate Programming?</A><BR>
126
<A HREF="intro_whatfw.html">1.2 What Is FunnelWeb?</A><BR>
127
<A HREF="intro_name.html">1.3 The Name FunnelWeb</A><BR>
128
<A HREF="intro_tutorial.html">1.4 Using These Tutorials</A><BR>
129
<A HREF="intro_hello.html">1.5 A Hello World Document</A><BR>
136
<P><A HREF="macro.html"><B>2 Macro Facilities Tutorial</B></A><BR>
142
<A HREF="macro_simple.html">2.1 Simple Macros</A><BR>
143
<A HREF="macro_times.html">2.2 Number of Times Called</A><BR>
144
<A HREF="macro_indent.html">2.3 Indentation</A><BR>
145
<A HREF="macro_additive.html">2.4 Additive Macros</A><BR>
146
<A HREF="macro_param.html">2.5 Parameterized Macros</A><BR>
147
<A HREF="macro_library.html">2.6 Library Macros</A><BR>
148
<A HREF="macro_expansion.html">2.7 Macro Expansion</A><BR>
149
<A HREF="macro_include.html">2.8 Include Files</A><BR>
156
<P><A HREF="type.html"><B>3 Typesetting Facilities Tutorial</B></A><BR>
162
<A HREF="type_overview.html">3.1 Overview</A><BR>
163
<A HREF="type_independence.html">3.2 Typesetter Independence</A><BR>
164
<A HREF="type_hierarchy.html">3.3 Hierarchical Structure</A><BR>
165
<A HREF="type_printed.html">3.4 Understanding the Printed Documentation</A><BR>
166
<A HREF="type_literals.html">3.5 Literals and Emphasis</A><BR>
167
<A HREF="type_header.html">3.6 Adding A Header Page</A><BR>
168
<A HREF="type_comments.html">3.7 Comments</A><BR>
175
<P><A HREF="example.html"><B>4 A Complete Example</B></A><BR>
177
<P><A HREF="hints.html"><B>5 FunnelWeb Hints</B></A><BR>
183
<A HREF="hints_names.html">5.1 Macro Names</A><BR>
184
<A HREF="hints_qnames.html">5.2 Quick Names</A><BR>
185
<A HREF="hints_martinet.html">5.3 FunnelWeb the Martinet</A><BR>
186
<A HREF="hints_eols.html">5.4 Fiddling With End of Lines</A><BR>
187
<A HREF="hints_conditionals.html">5.5 Fudging Conditionals</A><BR>
188
<A HREF="hints_headings.html">5.6 Changing the Strength of Headings</A><BR>
189
<A HREF="hints_efficiency.html">5.7 Efficiency Notes</A><BR>
190
<A HREF="hints_interactive.html">5.8 Interactive Mode</A><BR>
191
<A HREF="hints_default.html">5.9 Setting Up Default Options</A><BR>
192
<A HREF="hints_make.html">5.10 FunnelWeb and Make</A><BR>
193
<A HREF="hints_dangers.html">5.11 The Dangers Of FunnelWeb</A><BR>
194
<A HREF="hints_debugging.html">5.12 Wholistic Debugging</A><BR>
195
<A HREF="hints_tabs.html">5.13 TABs</A><BR>
196
<A HREF="hints_htmlstyle.html">5.14 HTML Style</A><BR>
197
<A HREF="hints_emacs.html">5.15 A FunnelWeb Mode For Emacs</A><BR>
204
<P><A HREF="examples.html"><B>6 Examples of FunnelWeb Applications</B></A><BR>
210
<A HREF="examples_postscript.html">6.1 Analyzing the Monster Postscript Header File</A><BR>
211
<A HREF="examples_adt.html">6.2 Making Ada ADTs More Abstract</A><BR>
212
<A HREF="examples_languages.html">6.3 Multiple Language Systems</A><BR>
213
<A HREF="examples_function.html">6.4 The Case of the Small Function</A><BR>
214
<A HREF="examples_comments.html">6.5 When Comments are Bad</A><BR>
215
<A HREF="examples_sharing.html">6.6 Documents That Share Text</A><BR>
216
<A HREF="examples_generics.html">6.7 Generics</A><BR>
223
<P><A HREF="web.html"><B>7 Making Webs With FunnelWeb</B></A><BR>
229
<A HREF="web_introduction.html">7.1 Introduction</A><BR>
230
<A HREF="web_start.html">7.2 Getting Started</A><BR>
231
<A HREF="web_messy.html">7.3 Replacing Messy HTML Constructs</A><BR>
232
<A HREF="web_errors.html">7.4 Avoiding Errors And Inconsistencies</A><BR>
233
<A HREF="web_style.html">7.5 Defining A Consistent Style</A><BR>
234
<A HREF="web_libraries.html">7.6 Defining Macro Libraries</A><BR>
235
<A HREF="web_param.html">7.7 Parameterizing Entire Webs</A><BR>
236
<A HREF="web_conventions.html">7.8 Hints And Conventions</A><BR>
252
<A HREF="mailto:webmaster@ross.net">Webmaster</A>
253
<A HREF="copyright.html">Copyright © Ross N. Williams 1992,1999. All rights reserved.</A><BR>
264
<!-- *********************************************************************** -->
265
<!-- End Of A FunnelWeb Manual Web Page (www.ross.net/funnelweb/) -->
266
<!-- *********************************************************************** -->