~ubuntu-branches/ubuntu/gutsy/funnelweb-doc/gutsy

« back to all changes in this revision

Viewing changes to 0fw.fw

  • Committer: Bazaar Package Importer
  • Author(s): Yann Dirson
  • Date: 2002-03-28 23:21:07 UTC
  • Revision ID: james.westby@ubuntu.com-20020328232107-3d1jiqv1eqmco3j9
Tags: upstream-3.2d
ImportĀ upstreamĀ versionĀ 3.2d

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
@!345678901234567890123456789012345678901234567890123456789012345678901234567890
 
2
@!******************************************************************************
 
3
 
 
4
@t vskip 50 mm
 
5
@t title titlefont centre "FunnelWeb Pages"
 
6
@t vskip 10 mm
 
7
@t title smalltitlefont centre "by Ross N. Williams"
 
8
@t title smalltitlefont centre "15 January 1997"
 
9
@t vskip 10 mm
 
10
@t title smalltitlefont centre "Copyright (C) Ross N. Williams 1997."
 
11
@t new_page
 
12
@t vskip 20 mm
 
13
@t title titlefont centre "Contents"
 
14
@t vskip 10 mm
 
15
@t table_of_contents
 
16
@t new_page
 
17
 
 
18
@!******************************************************************************
 
19
@!******************************************************************************
 
20
 
 
21
@A@<FunnelWeb Web@>
 
22
 
 
23
This document contains the FunnelWeb source for a web.
 
24
When processed by FunnelWeb, this file will
 
25
generate all the @{.html@} files in the web.
 
26
 
 
27
@!******************************************************************************
 
28
 
 
29
@B@<Copyright Notice@>
 
30
 
 
31
This FunnelWeb source file and all works derived from it (including, but
 
32
not limited to, the output files and printed documentation that can be
 
33
extracted using the FunnelWeb preprocessor) are copyright as shown below,
 
34
and the copyright message in the copyright macro
 
35
applies to all of these works. The enclosing macro is called at the start of
 
36
each FunnelWeb output file so that the copyright message appears in each
 
37
output file as well as in this FunnelWeb source file.
 
38
 
 
39
@$@<Copyright notice@>@Z@M@{@-
 
40
Copyright (C) Ross N. Williams 1992,1999. All rights reserved.@}
 
41
 
 
42
@$@<Copyright notice/HTML@>@Z@M@{@-
 
43
Copyright @<(C)@> Ross N. Williams 1992,1999. All rights reserved.@}
 
44
 
 
45
Permission is granted to make and distribute verbatim copies of this
 
46
FunnelWeb manual provided that all notices (including, without
 
47
limitation, the copyright notice, this permission notice, any record
 
48
of modification, and all legal notices) are preserved on all copies.
 
49
Modified versions of this manual, including translations to other
 
50
languages, may be distributed under the same terms, provided that each
 
51
modification made to the manual since its original release by Ross N.
 
52
Williams (www.ross.net) is identified on the page on which it occurs,
 
53
and the front page of the manual carries a notice notifying the reader
 
54
that changes have been made, and referring the reader to the official
 
55
FunnelWeb website at www.ross.net/funnelweb/.
 
56
 
 
57
To the extent permitted by law there is ABSOLUTELY NO WARRANTY.
 
58
 
 
59
@!******************************************************************************
 
60
 
 
61
@p maximum_input_line_length = 500
 
62
@p maximum_output_line_length = 500
 
63
 
 
64
@!******************************************************************************
 
65
 
 
66
@B@<Change Log@>
 
67
 
 
68
@$@<Change log@>@Z@{
 
69
15-Jan-1997: Created this web.
 
70
21-Jan-1997: This FunnelWeb web was first placed online.
 
71
29-Sep-1997: Adrian Corston changed the FunnelWeb mailing list to
 
72
             ...@@ross.net. The old addresses will work too.
 
73
29-Sep-1997: Updated Tony Coates URLs.
 
74
29-Sep-1997: Added code to suppress hyperlink underlining.
 
75
06-Mar-1998: I added Glauber Ribeiro's Win32 executable.
 
76
25-Apr-1998: faq.html: Modified the UNTAB program.
 
77
05-Aug-1998: Added user manual in PDF form.
 
78
05-Aug-1998: Added XML to links page.
 
79
24-Apr-1999: Reworked the entire web.
 
80
15-May-1999 RNW Uploaded the new improved web.
 
81
15-Jun-1999 RNW Added AIX executable.
 
82
30-Jun-1999 RNW Eliminated reference to non-existence background.gif file.
 
83
29-Sep-1999 RNW Updated mailing list page for new mailing list addresses.
 
84
29-Dec-1999 RNW Added sidebar image strut to stop it collapsing.
 
85
30-Dec-1999 RNW Amended the Tony Coates links on the links page.
 
86
03-Jan-2000 RNW Added Paul Wanis quote to testimonial page and sidebar quotes.
 
87
03-Jan-2000 RNW Changed the wording on the home page a little.
 
88
@}
 
89
 
 
90
@!******************************************************************************
 
91
 
 
92
@B@<Things To Do@>
 
93
 
 
94
@$@<Things to do@>@Z@{
 
95
 
 
96
Publicity
 
97
---------
 
98
* Register with search engines.
 
99
* Add to the Literate Programming Web Ring.
 
100
   http://www.tummy.com/LiterateProgramming/
 
101
 
 
102
Later
 
103
-----
 
104
* Put up DVI forms of the user manuals.
 
105
 
 
106
History
 
107
-------
 
108
09-Jul-1992 Work on FunnelWeb abandoned.
 
109
 
 
110
Shipping
 
111
--------
 
112
$ zip -v fw.zip fw.exe
 
113
  adding: fw.exe
 
114
                .....   (in=196608) (out=78447) (deflated 60%)
 
115
total bytes=196608, compressed=78447 -> 60% savings
 
116
 
 
117
@}
 
118
 
 
119
@!******************************************************************************
 
120
 
 
121
@B@<Graphic Design Notes@>
 
122
 
 
123
Sometimes when one needs to modify or duplicate the style of the original
 
124
graphics, it's very hard to remember how they were originally made. This
 
125
section contains notes on graphics in the FunnelWeb web.
 
126
 
 
127
@$@<Graphic Design Notes@>@Z@{
 
128
Title
 
129
   Bookman SSi 60pt Black
 
130
   Glass: Little lumps
 
131
Logo
 
132
   Take Macintosh FunnelWeb Icon
 
133
   Enlarge it
 
134
   Glass: Big Lumps (I think).
 
135
 
 
136
Labels
 
137
   Start with 100x25. Fill it in with (204,204,204).
 
138
   Bookman SSi, 18pt, Bold, Anti.
 
139
      Color=(0,0,0)
 
140
      Color=(255,0,0)
 
141
   Veracity shadow with blur=1
 
142
   Convert to SYSTEM colour pallete in Photoshop.
 
143
   (If you convert using adaptive, the grey background gets
 
144
    set to 206 instead of 204 and netscape dithers it when it
 
145
    displays it).
 
146
 
 
147
Front page ticks
 
148
   11-Jul-1999 I'm pretty sure these came from Web Explosion:Bullets.
 
149
@}
 
150
 
 
151
@!******************************************************************************
 
152
@!******************************************************************************
 
153
@!******************************************************************************
 
154
 
 
155
@$@<Body@>@M@{@-
 
156
<BODY BGCOLOR=@<White@>
 
157
      TEXT="#000000"
 
158
      VLINK="#660000"
 
159
      LINK="#FF0000"
 
160
      ALINK="#CC0000">@}
 
161
 
 
162
@$@<FunnelWeb WWW@>@Z@M@{@}
 
163
@$@<FunnelWeb Reference WWW@>@Z@M@{reference/@}
 
164
@$@<FunnelWeb Tutorial WWW@>@Z@M@{tutorial/@}
 
165
@$@<FunnelWeb Developer WWW@>@Z@M@{developer/@}
 
166
 
 
167
@$@<Page border colour@>@M@{#CCCCCC@}
 
168
 
 
169
@! The following macro is used in strings and so must be on one line.
 
170
@! @$@<Body/PERL@>@Z@M@{<BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000033\" VLINK=\"#660000\" LINK=\"#FF0000\" ALINK=\"#CC0000\">@}
 
171
 
 
172
@$@<FormWidth@>@Z@M@{35@}
 
173
 
 
174
@!******************************************************************************
 
175
 
 
176
@B@<Page Macros@>
 
177
 
 
178
The following macros provide macros to set up the top and bottom of pages.
 
179
 
 
180
@!------------------------------------------------------------------------------
 
181
 
 
182
@$@<Go to any page bar@>@M@{@-
 
183
<FORM ACTION=none>
 
184
<SELECT NAME="apage" SIZE=1
 
185
onChange="location.replace(this.options[this.selectedIndex].value); return true;">
 
186
@<FWOption@>@(@,Find any page.@)
 
187
@<FWOption@>@(@<Index FILE@>@,_______________@)
 
188
@<FWOption@>@(@<Index FILE@>@,HOME@)
 
189
@<FWOption@>@(@<Copyright FILE@>@,Copyright@)
 
190
@<FWOption@>@(@<Overview FILE@>@,_______________@)
 
191
@<FWOption@>@(@<Overview FILE@>@,OVERVIEW@)
 
192
@<FWOption@>@(@<Stability FILE@>@,Stability@)
 
193
@<FWOption@>@(@<FAQ FILE@>@,FAQ@)
 
194
@<FWOption@>@(@<Testimonials FILE@>@,Testimonials@)
 
195
@<FWOption@>@(@<Install FILE@>@,_______________@)
 
196
@<FWOption@>@(@<Install FILE@>@,INSTALL@)
 
197
@<FWOption@>@(@<Manuals FILE@>@,_______________@)
 
198
@<FWOption@>@(@<Manuals FILE@>@,MANUALS@)
 
199
@<FWOption@>@(@<Support FILE@>@,_______________@)
 
200
@<FWOption@>@(@<Support FILE@>@,SUPPORT@)
 
201
@<FWOption@>@(@<Mailing_list FILE@>@,Mailing List@)
 
202
@<FWOption@>@(@<Links FILE@>@,_______________@)
 
203
@<FWOption@>@(@<Links FILE@>@,LINKS@)
 
204
@<FWOption@>@(@<FunnelWeb_search FILE@>@,_______________@)
 
205
@<FWOption@>@(@<FunnelWeb_search FILE@>@,SEARCH@)
 
206
</SELECT>
 
207
</FORM>
 
208
@}
 
209
 
 
210
@$@<FWOption@>@(@2@)@M@{<OPTION VALUE="@1">@2@}
 
211
 
 
212
@!------------------------------------------------------------------------------
 
213
 
 
214
Page = Sidebar + Body + Rightline
 
215
Body = leftmargin + text + rightmargin
 
216
 
 
217
@$@<Page WIDTH@>@M@{535@}
 
218
@$@<Sidebar WIDTH@>@M@{120@}
 
219
@$@<Body WIDTH@>@M@{405@}
 
220
@$@<Rightline WIDTH@>@M@{10@}
 
221
 
 
222
@$@<Body leftmargin WIDTH@>@M@{20@}
 
223
@$@<Body text WIDTH@>@M@{365@}
 
224
@$@<Body rightmargin WIDTH@>@M@{20@}
 
225
 
 
226
@$@<Begin FunnelWeb generic page@>@(@3@)@M@{
 
227
<HTML>
 
228
 
 
229
@<Header comment@>
 
230
 
 
231
<HEAD>
 
232
<TITLE>@1</TITLE>
 
233
@<Suppress hyperlink underlining@>
 
234
@2
 
235
</HEAD>
 
236
 
 
237
@<Body@>
 
238
 
 
239
<CENTER>
 
240
 
 
241
<TABLE WIDTH=@<Page WIDTH@> BORDER=0 CELLSPACING=0 CELLPADDING=0>
 
242
 
 
243
<TR>
 
244
<TD COLSPAN=3 BGCOLOR=@<Page border colour@> VALIGN="bottom">@<Banner IMAGE/left@>
 
245
@<BR@>
 
246
@<BR@>
 
247
@<BR@>
 
248
@<Go to any page bar@></TD>
 
249
</TR>
 
250
 
 
251
<TR>
 
252
<TD BGCOLOR=@<Page border colour@> ROWSPAN=2 WIDTH=@<Sidebar WIDTH@> VALIGN=top ALIGN=left>
 
253
@<HStrut@>@(@<Sidebar WIDTH@>@)@<BR@>
 
254
@<Space(w,h)/left@>@(7@,1@)@<RossNet linklogo IMAGE@>@<BR@>
 
255
@<BR@>
 
256
<CENTER>
 
257
@3
 
258
</CENTER>
 
259
@<Dynamic sidebar note@>
 
260
</TD>
 
261
<TD BGCOLOR=@<Page border colour@> ALIGN=CENTER>
 
262
@<_@>
 
263
</TD>
 
264
<TD BGCOLOR=@<Page border colour@>>@<_@></TD>
 
265
</TR>
 
266
 
 
267
<TR>
 
268
<TD WIDTH=@<Body WIDTH@> BGCOLOR=#FFFFFF>
 
269
 
 
270
<TABLE WIDTH=@<Body WIDTH@> BORDER=0 CELLPADDING=0 CELLSPACING=0>
 
271
<TR><TD WIDTH=@<Body leftmargin WIDTH@>>&nbsp;</TD><TD WIDTH=@<Body text WIDTH@> VALIGN="top">
 
272
<BR>
 
273
@}
 
274
 
 
275
@!------------------------------------------------------------------------------
 
276
 
 
277
@$@<End FunnelWeb page@>@M@{
 
278
@<P@>
 
279
@<Go to any page bar@>
 
280
@<P@>
 
281
@<Begin size2@>
 
282
<A HREF="@<Index FILE@>">HOME</A>
 
283
@<_@>@<_@>
 
284
<A HREF="mailto:@<Ross webmaster EMAIL@>">Webmaster</A>
 
285
@<_@>@<_@>
 
286
<A HREF="@<Copyright FILE@>">@<Copyright notice/HTML@></A><BR>
 
287
<BR>
 
288
@<End size2@>
 
289
</TD>
 
290
<TD WIDTH=@<Body rightmargin WIDTH@>>&nbsp;</TD>
 
291
</TABLE>
 
292
 
 
293
</TD>
 
294
 
 
295
<TD WIDTH=@<Rightline WIDTH@> BGCOLOR=@<Page border colour@>>&nbsp;</TD>
 
296
 
 
297
</TR>
 
298
 
 
299
<TR><TD COLSPAN=3 BGCOLOR=@<Page border colour@>>&nbsp;</TD></TR>
 
300
 
 
301
</TABLE>
 
302
 
 
303
 
 
304
</CENTER>
 
305
</BODY>
 
306
 
 
307
@<Trailer comment@>
 
308
 
 
309
</HTML>
 
310
@}
 
311
 
 
312
@$@<Buttons/home@>@M@{
 
313
@<Begin size5@>
 
314
@<Label_home_b IMAGE@>@<BR@>
 
315
@<Label_overview_a IMAGE@>@<BR@>
 
316
@<Label_install_a IMAGE@>@<BR@>
 
317
@<Label_manuals_a IMAGE@>@<BR@>
 
318
@<Label_support_a IMAGE@>@<BR@>
 
319
@<Label_links_a IMAGE@>@<BR@>
 
320
@<Label_search_a IMAGE@>@<BR@>
 
321
@<End size5@>
 
322
@}
 
323
 
 
324
@$@<Buttons/overview@>@M@{
 
325
@<Begin size5@>
 
326
@<Label_home_a IMAGE@>@<BR@>
 
327
@<Label_overview_b IMAGE@>@<BR@>
 
328
@<Label_install_a IMAGE@>@<BR@>
 
329
@<Label_manuals_a IMAGE@>@<BR@>
 
330
@<Label_support_a IMAGE@>@<BR@>
 
331
@<Label_links_a IMAGE@>@<BR@>
 
332
@<Label_search_a IMAGE@>@<BR@>
 
333
@<End size5@>
 
334
@}
 
335
 
 
336
@$@<Buttons/install@>@M@{
 
337
@<Begin size5@>
 
338
@<Label_home_a IMAGE@>@<BR@>
 
339
@<Label_overview_a IMAGE@>@<BR@>
 
340
@<Label_install_b IMAGE@>@<BR@>
 
341
@<Label_manuals_a IMAGE@>@<BR@>
 
342
@<Label_support_a IMAGE@>@<BR@>
 
343
@<Label_links_a IMAGE@>@<BR@>
 
344
@<Label_search_a IMAGE@>@<BR@>
 
345
@<End size5@>
 
346
@}
 
347
 
 
348
@$@<Buttons/manuals@>@M@{
 
349
@<Begin size5@>
 
350
@<Label_home_a IMAGE@>@<BR@>
 
351
@<Label_overview_a IMAGE@>@<BR@>
 
352
@<Label_install_a IMAGE@>@<BR@>
 
353
@<Label_manuals_b IMAGE@>@<BR@>
 
354
@<Label_support_a IMAGE@>@<BR@>
 
355
@<Label_links_a IMAGE@>@<BR@>
 
356
@<Label_search_a IMAGE@>@<BR@>
 
357
@<End size5@>
 
358
@}
 
359
 
 
360
@$@<Buttons/support@>@M@{
 
361
@<Begin size5@>
 
362
@<Label_home_a IMAGE@>@<BR@>
 
363
@<Label_overview_a IMAGE@>@<BR@>
 
364
@<Label_install_a IMAGE@>@<BR@>
 
365
@<Label_manuals_a IMAGE@>@<BR@>
 
366
@<Label_support_b IMAGE@>@<BR@>
 
367
@<Label_links_a IMAGE@>@<BR@>
 
368
@<Label_search_a IMAGE@>@<BR@>
 
369
@<End size5@>
 
370
@}
 
371
 
 
372
@$@<Buttons/links@>@M@{
 
373
@<Begin size5@>
 
374
@<Label_home_a IMAGE@>@<BR@>
 
375
@<Label_overview_a IMAGE@>@<BR@>
 
376
@<Label_install_a IMAGE@>@<BR@>
 
377
@<Label_manuals_a IMAGE@>@<BR@>
 
378
@<Label_support_a IMAGE@>@<BR@>
 
379
@<Label_links_b IMAGE@>@<BR@>
 
380
@<Label_search_a IMAGE@>@<BR@>
 
381
@<End size5@>
 
382
@}
 
383
 
 
384
@$@<Buttons/search@>@M@{
 
385
@<Begin size5@>
 
386
@<Label_home_a IMAGE@>@<BR@>
 
387
@<Label_overview_a IMAGE@>@<BR@>
 
388
@<Label_install_a IMAGE@>@<BR@>
 
389
@<Label_manuals_a IMAGE@>@<BR@>
 
390
@<Label_support_a IMAGE@>@<BR@>
 
391
@<Label_links_a IMAGE@>@<BR@>
 
392
@<Label_search_b IMAGE@>@<BR@>
 
393
@<End size5@>
 
394
@}
 
395
 
 
396
@!------------------------------------------------------------------------------
 
397
 
 
398
@$@<Begin FunnelWeb page/index@>@(@1@)@Z@M@{
 
399
@<Begin FunnelWeb generic page@>@(@1@,@<FunnelWeb keywords and decription@>@,@<Buttons/home@>@)
 
400
@}
 
401
 
 
402
@!------------------------------------------------------------------------------
 
403
 
 
404
@$@<Begin FunnelWeb page/home@>@(@1@)@Z@M@{
 
405
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/home@>@)
 
406
@<FunnelWeb heading@>@(@1@)
 
407
@}
 
408
 
 
409
@!------------------------------------------------------------------------------
 
410
 
 
411
@$@<Begin FunnelWeb page/overview@>@(@1@)@Z@M@{
 
412
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/overview@>@)
 
413
@<FunnelWeb heading@>@(@1@)
 
414
@}
 
415
 
 
416
@!------------------------------------------------------------------------------
 
417
 
 
418
@$@<Begin FunnelWeb page/install@>@(@1@)@Z@M@{
 
419
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/install@>@)
 
420
@<FunnelWeb heading@>@(@1@)
 
421
@}
 
422
 
 
423
@!------------------------------------------------------------------------------
 
424
 
 
425
@$@<Begin FunnelWeb page/manuals@>@(@1@)@Z@M@{
 
426
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/manuals@>@)
 
427
@<FunnelWeb heading@>@(@1@)
 
428
@}
 
429
 
 
430
@!------------------------------------------------------------------------------
 
431
 
 
432
@$@<Begin FunnelWeb page/support@>@(@1@)@Z@M@{
 
433
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/support@>@)
 
434
@<FunnelWeb heading@>@(@1@)
 
435
@}
 
436
 
 
437
@!------------------------------------------------------------------------------
 
438
 
 
439
@$@<Begin FunnelWeb page/links@>@(@1@)@Z@M@{
 
440
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/links@>@)
 
441
@<FunnelWeb heading@>@(@1@)
 
442
@}
 
443
 
 
444
@!------------------------------------------------------------------------------
 
445
 
 
446
@$@<Begin FunnelWeb page/search@>@(@1@)@Z@M@{
 
447
@<Begin FunnelWeb generic page@>@(@1@,@,@<Buttons/search@>@)
 
448
@<FunnelWeb heading@>@(@1@)
 
449
@}
 
450
 
 
451
@!******************************************************************************
 
452
 
 
453
@B@<Images@>
 
454
 
 
455
@$@<Banner IMAGE/left@>@M@{@-
 
456
<A HREF="@<Index FILE@>"><IMG SRC="@<Bin@>title.gif"
 
457
 WIDTH="300" HEIGHT="60" ALT="FunnelWeb" BORDER="0" HSPACE=10 VSPACE=5 ALIGN="left"></A>@}
 
458
 
 
459
@!******************************************************************************
 
460
 
 
461
@B@<General FunnelWeb Macros@>
 
462
 
 
463
@$@<FunnelWeb Webmaster@>@M@{@-
 
464
@<Link@>@(mailto:@<Ross webmaster EMAIL@>@,FunnelWeb Webmaster@)@}
 
465
 
 
466
@$@<FunnelWeb heading@>@(@1@)@Z@M@{@-
 
467
@<P@>@<BR@>@<Size6@>@(@1@)@<BR@>@}
 
468
 
 
469
@$@<FunnelWeb heading/nospace@>@(@1@)@Z@M@{@-
 
470
@<Size6@>@(@1@)@<BR@>@}
 
471
 
 
472
@$@<FunnelWeb subheading@>@(@1@)@Z@M@{@-
 
473
@<P@>@<BR@>@<Size4@>@(@<B@>@(@1@)@)@<BR@>@}
 
474
 
 
475
@$@<FunnelWeb subsubheading@>@(@1@)@Z@M@{@-
 
476
@<P@>@<BR@>@<Size3@>@(@<B@>@(@1@)@)@<BR@>@}
 
477
 
 
478
@$@<FunnelWeb heading/center@>@(@1@)@Z@M@{@-
 
479
@<P@>@<BR@>
 
480
@<Begin center@>
 
481
@<Size5@>@(@<B@>@(@1@)@)@<BR@>
 
482
@<End center@>@}
 
483
 
 
484
 
 
485
@$@<Bar30@>@Z@M@{<P><CENTER><HR WIDTH="30%"></CENTER>@}
 
486
 
 
487
@$@<Back to the home page@>@Z@M@{
 
488
@<P@>
 
489
@<BR@>
 
490
@<B@>@(<A HREF="@<Index FILE@>">Back to the FunnelWeb Home Page</A>@)@<BR@>
 
491
@}
 
492
 
 
493
@$@<Label_home_a IMAGE@>@M@{@<VLabel@>@(Home@,label_home_a.gif@,@<Index FILE@>@)@}
 
494
@$@<Label_home_b IMAGE@>@M@{@<VLabel@>@(Home@,label_home_b.gif@,@<Index FILE@>@)@}
 
495
 
 
496
@$@<Label_overview_a IMAGE@>@M@{@<VLabel@>@(Overview@,label_overview_a.gif@,@<Overview FILE@>@)@}
 
497
@$@<Label_overview_b IMAGE@>@M@{@<VLabel@>@(Overview@,label_overview_b.gif@,@<Overview FILE@>@)@}
 
498
 
 
499
@$@<Label_install_a IMAGE@>@M@{@<VLabel@>@(Install@,label_install_a.gif@,@<Install FILE@>@)@}
 
500
@$@<Label_install_b IMAGE@>@M@{@<VLabel@>@(Install@,label_install_b.gif@,@<Install FILE@>@)@}
 
501
 
 
502
@$@<Label_manuals_a IMAGE@>@M@{@<VLabel@>@(Manuals@,label_manuals_a.gif@,@<Manuals FILE@>@)@}
 
503
@$@<Label_manuals_b IMAGE@>@M@{@<VLabel@>@(Manuals@,label_manuals_b.gif@,@<Manuals FILE@>@)@}
 
504
 
 
505
@$@<Label_support_a IMAGE@>@M@{@<VLabel@>@(Support@,label_support_a.gif@,@<Support FILE@>@)@}
 
506
@$@<Label_support_b IMAGE@>@M@{@<VLabel@>@(Support@,label_support_b.gif@,@<Support FILE@>@)@}
 
507
 
 
508
@$@<Label_links_a IMAGE@>@M@{@<VLabel@>@(Links@,label_links_a.gif@,@<Links FILE@>@)@}
 
509
@$@<Label_links_b IMAGE@>@M@{@<VLabel@>@(Links@,label_links_b.gif@,@<Links FILE@>@)@}
 
510
 
 
511
@$@<Label_search_a IMAGE@>@M@{@<VLabel@>@(Search@,label_search_a.gif@,@<FunnelWeb_search FILE@>@)@}
 
512
@$@<Label_search_b IMAGE@>@M@{@<VLabel@>@(Search@,label_search_b.gif@,@<FunnelWeb_search FILE@>@)@}
 
513
 
 
514
@$@<VLabel@>@(@3@)@M@{<A HREF="@3"><IMG SRC="@<Bin@>@2" HEIGHT=25 WIDTH=100 BORDER=0 ALT="@1"></A>@}
 
515
 
 
516
@$@<Red_pin IMAGE/left@>@Z@M@{<IMG SRC="@<Bin@>rd_pin.gif" HEIGHT="21" WIDTH="21" ALIGN="left" ALT="*">@}
 
517
 
 
518
@$@<Rossnet_logo IMAGE@>@Z@M@{@-
 
519
<A HREF="@<Ross root WWW@>">
 
520
   <IMG BORDER="0"
 
521
    ALT="*"
 
522
    ALIGN="left"
 
523
    SRC="@<Bin@>rossnet_logo.gif" HEIGHT="32" WIDTH="64">
 
524
</A>@}
 
525
 
 
526
@$@<FunnelWeb_logo IMAGE@>@Z@M@{@-
 
527
<A HREF="@<FunnelWeb WWW@>">
 
528
   <IMG BORDER="0"
 
529
    ALT="*"
 
530
    ALIGN="left"
 
531
    SRC="@<Bin@>linklogo.gif" HEIGHT="32" WIDTH="64">
 
532
</A>@}
 
533
 
 
534
@$@<Spider_up IMAGE@>@Z@M@{@-
 
535
<IMG SRC="@<Bin@>fw_up.gif" WIDTH=32 HEIGHT=32 ALT="*">@}
 
536
 
 
537
@$@<Spider_up IMAGE/left@>@Z@M@{@-
 
538
<IMG SRC="@<Bin@>fw_up.gif" WIDTH=32 HEIGHT=32 ALT="*" ALIGN="left">@}
 
539
 
 
540
@$@<Spider_up IMAGE/right@>@Z@M@{@-
 
541
<IMG SRC="@<Bin@>fw_up.gif" WIDTH=32 HEIGHT=32 ALT="*" ALIGN="right">@}
 
542
 
 
543
@$@<Spider_down IMAGE@>@Z@M@{@-
 
544
<IMG SRC="@<Bin@>fw_down.gif" WIDTH=32 HEIGHT=32 ALT="*">@}
 
545
 
 
546
@$@<Spider_left IMAGE@>@Z@M@{@-
 
547
<IMG SRC="@<Bin@>fw_left.gif" WIDTH=32 HEIGHT=32 ALT="*">@}
 
548
 
 
549
@$@<Spider_left IMAGE/right@>@Z@M@{@-
 
550
<IMG SRC="@<Bin@>fw_left.gif" WIDTH=32 HEIGHT=32 ALT="*" ALIGN="right">@}
 
551
 
 
552
@$@<Spider_right IMAGE@>@Z@M@{@-
 
553
<IMG SRC="@<Bin@>fw_right.gif" WIDTH=32 HEIGHT=32 ALT="*">@}
 
554
 
 
555
@$@<Spider_right IMAGE/left@>@Z@M@{@-
 
556
<IMG SRC="@<Bin@>fw_right.gif" WIDTH=32 HEIGHT=32 ALT="*" ALIGN="left">@}
 
557
 
 
558
@$@<Spider_right IMAGE/right@>@Z@M@{@-
 
559
<IMG SRC="@<Bin@>fw_right.gif" WIDTH=32 HEIGHT=32 ALT="*" ALIGN="right">@}
 
560
 
 
561
@!******************************************************************************
 
562
 
 
563
@$@<FunnelWeb keywords and decription@>@{
 
564
<META NAME="description"
 
565
 CONTENT="FunnelWeb is a portable literate-programming macro preprocessor
 
566
 that enables you to weave code and documentation together."
 
567
 
 
568
<META NAME="keywords"
 
569
 CONTENT="funnelweb,funnel,web,FunnelWeb,Funnelweb,
 
570
          literate programming,literate, programming,literate-programming,
 
571
          macro,macros,preprocessor,macro preprocessor,
 
572
          software,free,freeware,gnu,copyleft,
 
573
          web,development,tool,web tool,
 
574
          ross,williams,ross williams,
 
575
          ross n williams,Ross,Williams,Ross Williams">
 
576
@}
 
577
 
 
578
@!==============================================================================
 
579
 
 
580
@$@<FWIcon@>@Z@M@{
 
581
<IMG SRC="@<Bin@>fw_icon.gif" HEIGHT="32" WIDTH="32" BORDER="0" ALT="[Icon]">
 
582
@}
 
583
 
 
584
@$@<FWIcon/para@>@Z@M@{
 
585
<IMG SRC="@<Bin@>fw_icon.gif"
 
586
HEIGHT="32" WIDTH="32"
 
587
BORDER="0" ALT="[Icon]"
 
588
ALIGN="left" HSPACE="5">
 
589
@}
 
590
 
 
591
@$@<Tick16 IMAGE@>@Z@M@{@-
 
592
<IMG SRC="@<Bin@>tick_red.gif"
 
593
WIDTH="16" HEIGHT="16" HSPACE=2 VSPACE=0 ALT="*" BORDER="0">@}
 
594
 
 
595
@$@<Tick IMAGE@>@Z@M@{@-
 
596
<IMG SRC="@<Bin@>tick_red_12.gif"
 
597
WIDTH="12" HEIGHT="12" HSPACE=4 VSPACE=0 ALT="*" BORDER="0">@}
 
598
 
 
599
@!******************************************************************************
 
600
@!******************************************************************************
 
601
 
 
602
@$@<Home FILE@>@Z@M@{index.shtml@}
 
603
@$@<Index FILE@>@Z@M@{index.shtml@}
 
604
@O@<index.shtml@>@{@-
 
605
@<Begin FunnelWeb page/index@>@(The FunnelWeb Literate Programming Tool@)
 
606
 
 
607
@<IFCopy@>@(
 
608
@<Begin blockquote@>
 
609
<FONT COLOR=#993300 SIZE=2>
 
610
@<Boldthing@>@(Note:@) This is a copy of the FunnelWeb
 
611
website as it was on @<CopyDate@>. This copy may now be
 
612
out of date. The official FunnelWeb website can be found
 
613
at @<WindowLink@>@(@<FunnelWeb WWW/abs@>@,@-
 
614
@<FunnelWeb WINDOWNAME@>@,@<FunnelWeb WWW/abs@>@)
 
615
</FONT>
 
616
@<End blockquote@>
 
617
 
 
618
@<P@>
 
619
@<HR@>
 
620
@)
 
621
 
 
622
@<P@>@<Spider_up IMAGE/right@>Welcome to the FunnelWeb Home Page.
 
623
FunnelWeb is a
 
624
powerful literate-programming macro preprocessor that
 
625
enables you to weave programs and documentation together.
 
626
FunnelWeb is a @<B@>@(production quality@) tool that was
 
627
specifically engineered for practical everyday use:
 
628
 
 
629
@<P@>
 
630
@<Begin indent@>
 
631
@<Tick IMAGE@>Can be used with any programming language.@<BR@>
 
632
@<Tick IMAGE@>Runs on most platforms (including GNU/Linux).@<BR@>
 
633
@<Tick IMAGE@>Free of charge; entirely non-commercial.@<BR@>
 
634
@<Tick IMAGE@>Source available under a GNU licence.@<BR@>
 
635
@<Tick IMAGE@>Reference, tutorial, and developer manuals.@<BR@>
 
636
@<Tick IMAGE@>Mature and essentially bug-free (released 1992).@<BR@>
 
637
@<Tick IMAGE@>Simple; specifically designed to minimize errors.@<BR@>
 
638
@<Tick IMAGE@>High speed; doesn't stretch the development cycle.@<BR@>
 
639
@<Tick IMAGE@>Used to create the @<Veracity@> data integrity product.@<BR@>
 
640
@<Tick IMAGE@>Generates documentation in HTML and TeX forms.@<BR@>
 
641
@<Tick IMAGE@>FunnelWeb user community mailing list.@<BR@>
 
642
@<End indent@>
 
643
 
 
644
@<P@>@<Spider_right IMAGE/left@>But FunnelWeb is also
 
645
a powerful @<B@>@(general
 
646
purpose@) text file preparation tool that has found many
 
647
applications outside the area of literate programming. For
 
648
example, FunnelWeb was used to create the web you are
 
649
reading. Check out the @<User Testimonials@>.
 
650
 
 
651
@<P@>@<Spider_left IMAGE/right@>If
 
652
you are looking for a solid literate-programming
 
653
tool, or if you are curious about how FunnelWeb's macro
 
654
capabilities can help you in your everyday computing, I
 
655
hope that you will take the time to
 
656
@<Link@>@(@<Install FILE@>@,try out FunnelWeb.@)
 
657
 
 
658
@<P@>
 
659
@<Ross Williams@>@<BR@>
 
660
Author of FunnelWeb@<BR@>
 
661
Adelaide, May 1999.@<BR@>
 
662
 
 
663
@<P@>
 
664
@<Begin size2@>
 
665
PS: If you found this page because you were looking for the
 
666
Funnelweb web traffic analysis tool, you should visit the
 
667
@<Active Concepts@> web instead.
 
668
@<End size2@>
 
669
 
 
670
@<End FunnelWeb page@>
 
671
@}
 
672
 
 
673
@!******************************************************************************
 
674
 
 
675
@$@<Overview FILE@>@Z@M@{overview.shtml@}
 
676
@O@<overview.shtml@>@{
 
677
@<Begin FunnelWeb page/overview@>@(Overview Of FunnelWeb@)
 
678
 
 
679
@<P@>@<Spider_right IMAGE/right@>FunnelWeb
 
680
is a essentially a macro preprocessor. It reads
 
681
in an input file containing a list of macros and generates one
 
682
or more output files that are defined in terms of the macros.
 
683
In between the macro definitions, you can add explanatory text,
 
684
enabling the entire document to be typeset as code documentation.
 
685
For this reason, FunnelWeb is best described as a
 
686
"Literate Programming Macro Preprocessor".
 
687
 
 
688
@<P@>FunnelWeb has the following features:
 
689
 
 
690
@<P@>
 
691
@<Begin list@>
 
692
@<Item@>A simple macro preprocessor facility.
 
693
@<Item@>Generates documentation in TeX and HTML formats.
 
694
@<Item@>Runs on a variety of platforms.
 
695
@<Item@>Portable C source code available under GNU licence.
 
696
@<Item@>Comprehensive documentation.
 
697
@<Item@>Input-programming-language independent.
 
698
@<Item@>Allows complete control over the output text.
 
699
@<End list@>
 
700
 
 
701
@<P@>FunnelWeb can be used in a variety of roles, but in particular
 
702
is useful for:
 
703
 
 
704
@<Begin list@>
 
705
@<Item@>Writing complicated computer programs.
 
706
@<Item@>Preparing related collection of text files.
 
707
@<Item@>Preparing text files in a cryptic language.
 
708
@<End list@>
 
709
 
 
710
@<P@>@<Spider_right IMAGE/left@>In
 
711
particular, these properties make FunnelWeb perfect for
 
712
generating webs. In fact, this FunnelWeb web was generated
 
713
using FunnelWeb. For more information, see the chapter on this
 
714
topic in the @<FunnelWeb Tutorial Manual@>.
 
715
 
 
716
@<P@>FunnelWeb is in use all around the world in a wide variety of
 
717
roles. To see some comments that FunnelWeb users have made about
 
718
FunnelWeb, see the @<FunnelWeb Testimonials@> page.
 
719
 
 
720
@<P@>To get started with FunnelWeb, visit the
 
721
@<FunnelWeb Installation@> page. If you're worried about the
 
722
stability and availabity of FunnelWeb, visit the
 
723
@<Link@>@(@<Stability FILE@>@,Stability Page@).
 
724
 
 
725
@<P@>There is a @<Frequently Asked Questions@> page too.
 
726
 
 
727
@<End FunnelWeb page@>
 
728
@}
 
729
 
 
730
@!******************************************************************************
 
731
 
 
732
@$@<Stability FILE@>@Z@M@{stability.shtml@}
 
733
@O@<stability.shtml@>@{
 
734
@<Begin FunnelWeb page/overview@>@(FunnelWeb Stability@)
 
735
 
 
736
@<P@>@<Spider_right IMAGE/left@>One
 
737
of the dangers of becoming involved with a language
 
738
tool such as FunnelWeb is that you become dependent upon it.
 
739
If FunnelWeb were to stop working for some reason, your
 
740
@<TT@>@(.fw@) files would become unuseable. This can happen
 
741
because of operating system upgrades, copyright problems,
 
742
unfixable bugs, or just the inability of the program to be
 
743
ported to a new target platform.
 
744
 
 
745
@<P@>I am critically aware of these issues, and have taken
 
746
the following steps to ensure that FunnelWeb provides a
 
747
stable base upon which to build software:
 
748
 
 
749
@<Narrowthing@>@(Open source:@,FunnelWeb's C source code has
 
750
been released under GNU General Public License Version 2.
 
751
This means not only that FunnelWeb is available free of
 
752
charge, but that the source code to FunnelWeb is available
 
753
to you free of charge too. If a FunnelWeb executable ever
 
754
stops working, you can compile a new version on your
 
755
platform. If ever you run up against a serious bug, you can
 
756
always fix it.@)
 
757
 
 
758
@<Narrowthing@>@(Portability:@,FunnelWeb has been designed
 
759
and written to be extremely portable. First, all FunnelWeb
 
760
really does is read and write text files, which are very
 
761
portable operations. Second, FunnelWeb is written in the C
 
762
programming language with portability as a major design
 
763
goal. Third, FunnelWeb has already been ported to many
 
764
popular platforms (including Windows, Macintosh, Solaris,
 
765
and OpenVMS) and will probably compile on many others, with
 
766
almost no change. Fourth, FunnelWeb comes with a
 
767
comprehensive automated regression test suite that makes it
 
768
easy to pinpoint problems when it is moved to a new
 
769
platform. All this amounts to an assurance that if you have
 
770
to migrate to a new platform, FunnelWeb can migrate with
 
771
you.@)
 
772
 
 
773
@<Narrowthing@>@(Quality:@,The FunnelWeb source code is
 
774
stable high quality code. Design decisions have not been
 
775
taken lightly. FunnelWeb V3.0 has been in daily use since
 
776
its release in 1992, and the few bugs that were found were
 
777
all fixed in FunnelWeb V3.2.@)
 
778
 
 
779
@<Narrowthing@>@(Documentation:@,FunnelWeb is comprehensively
 
780
documented by
 
781
the @<FunnelWeb Reference Manual@>,
 
782
the @<FunnelWeb Tutorial Manual@>
 
783
and the @<FunnelWeb Developer Manual@>.
 
784
These manuals, plus the source code, provide the
 
785
ultimate reference for any questions about FunnelWeb
 
786
you may have.@)
 
787
 
 
788
@<Narrowthing@>@(Language stability:@,To protect your
 
789
investment in the FunnelWeb language, I intend to ensure
 
790
that future versions of the official version of FunnelWeb
 
791
maintain backwards compatibility so that existing FunnelWeb
 
792
files can always be processed. Having done most of my
 
793
programming since 1986 using FunnelWeb, I am not in a
 
794
position to compromise on backwards compatibility!@)
 
795
 
 
796
@<P@>It is my hope that together these elements will
 
797
eliminate any fears you may have about the stability
 
798
and availability of the FunnelWeb language.
 
799
 
 
800
@<End FunnelWeb page@>
 
801
@}
 
802
 
 
803
@!******************************************************************************
 
804
 
 
805
@$@<FAQ@>@Z@M@{@<Link@>@(@<FAQ FILE@>@,FAQ@)@}
 
806
@$@<Frequently Asked Questions@>@Z@M@{@<Link@>@(@<FAQ FILE@>@,FAQ@)@}
 
807
@$@<FAQ FILE@>@M@{faq.shtml@}
 
808
@O@<faq.shtml@>@{@-
 
809
@<Begin FunnelWeb page/overview@>@(Frequently Asked Questions@)
 
810
 
 
811
@<FunnelWeb subheading@>@(What Is FunnelWeb?@)
 
812
 
 
813
@<P@>FunnelWeb is a essentially a macro preprocessor. It reads
 
814
in an input file containing a list of macros and generates one
 
815
or more output files that are defined in terms of the macros.
 
816
In between the macro definitions, you can add explanatory text,
 
817
enabling the entire document to be typeset as documentation for
 
818
the code. For this reason, FunnelWeb is best describes as a
 
819
"Literate Programming Macro Preprocessor".
 
820
 
 
821
@<FunnelWeb subheading@>@(How Much Does FunnelWeb Cost?@)
 
822
 
 
823
@<P@>FunnelWeb is free and distributed under a GNU licence.
 
824
You can download executables for a wide range of platforms,
 
825
or compile FunnelWeb yourself.
 
826
 
 
827
@<FunnelWeb subheading@>@(I Was Expecting A Web Log Analysis Tool!@)
 
828
 
 
829
@<P@>In about 1997, the Australian company
 
830
@<Active Concepts@> named its webserver logfile analysis tool
 
831
@<DQ@>@(Funnel Web@). If you were looking for that tool, visit
 
832
the @<Active Concepts@> web site. From what I have heard, their
 
833
FunnelWeb is an excellent webserver logfile analysis tool.
 
834
 
 
835
@<P@>Note: The FunnelWeb of the site you are reading was named
 
836
in 1986, long before the world wide web even existed.
 
837
 
 
838
@<End FunnelWeb page@>
 
839
@}
 
840
 
 
841
@!******************************************************************************
 
842
 
 
843
@$@<User Testimonials@>@M@{@<Link@>@(@<Testimonials FILE@>@,User Testimonials@)@}
 
844
 
 
845
@$@<FunnelWeb Testimonials@>@M@{@<Link@>@(@<Testimonials FILE@>@,FunnelWeb Testimonials@)@}
 
846
 
 
847
@$@<FWTestimonial@>@(@2@)@M@{@-
 
848
@<Begin blockquote@>
 
849
@1
 
850
@<Begin indent@>
 
851
@<Begin size2@>
 
852
@2
 
853
@<End size2@>
 
854
@<End indent@>
 
855
@<End blockquote@>
 
856
@}
 
857
 
 
858
@$@<Testimonials FILE@>@Z@M@{testimonials.shtml@}
 
859
@O@<testimonials.shtml@>@{@-
 
860
@<Begin FunnelWeb page/overview@>@(FunnelWeb User Testimonials@)
 
861
 
 
862
@<Begin size4@>
 
863
@<P@>Praise for FunnelWeb:
 
864
@<End size4@>
 
865
 
 
866
@<P@>
 
867
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(Power@)
 
868
 
 
869
@<FWTestimonial@>@(
 
870
"I've been fooling around with FunnelWeb for about three days now, and
 
871
I'm convinced that this is one of the most powerful tools I have
 
872
encountered in almost two decades of programming. I'm in the process
 
873
of converting several thousand lines of very repetitive code to
 
874
FunnelWeb macros; I can't believe how EASY it is, and how GOOD the
 
875
resulting source code and documentation are. Thank you for this tool!"
 
876
@,
 
877
Jerry Callen (jcallen@@world.std.com)@<BR@>
 
878
Runtime Engineer,@<BR@>
 
879
Thinking Machines Corporation,@<BR@>
 
880
Boston, USA.@<BR@>
 
881
22-Jun-1992 (Authorized to be quoted 16-Oct-1992).
 
882
@)
 
883
 
 
884
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(Quality@)
 
885
 
 
886
@<FWTestimonial@>@(
 
887
"I really like the 'quality' of the FW distribution. Well done Ross!
 
888
I cannot call it 'professional quality' because much of the
 
889
'professional' software I have seen has been VERY POOR.  Your package
 
890
is better than 'professional', but I don't know of an appropriate
 
891
adjective."
 
892
@,
 
893
George Vokalek (gvokalek@@augean.eleceng.adelaide.edu.au).@<BR@>
 
894
Hardware Engineer,@<BR@>
 
895
University of Adelaide,@<BR@>
 
896
South Australia, Australia.@<BR@>
 
897
14-Jun-1992 (Authorized to be quoted 18-Oct-1992).
 
898
@)
 
899
 
 
900
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(Correctness@)
 
901
 
 
902
@<FWTestimonial@>@(
 
903
"I have used FunnelWeb on two ASSEMBLER modules. Written for a
 
904
microcontroller with NO DEBUGGING POSSIBLE, so correctness and
 
905
emphasis on getting it right was important.@<BR@>
 
906
@<BR@>
 
907
I found it forced me to reorganise the code a bit, to get my concepts
 
908
straight. By the time I did this, and documented what I was doing,
 
909
[including a C version of an algorithm in one module] It looked good,
 
910
and worked in a few passes.@<BR@>
 
911
@<BR@>
 
912
I am VERY happy with the results. ...@<BR@>
 
913
@<BR@>
 
914
And, I got a very nice listing to present the customer!!"
 
915
@,
 
916
John Skaller (maxtal@@extro.ucc.su.oz.au)@<BR@>
 
917
Maxtal Pty Ltd,@<BR@>
 
918
Sydney, Australia.@<BR@>
 
919
09-Jul-1992 (Authorized to be quoted 17-Oct-1992).
 
920
@)
 
921
 
 
922
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(User Manual@)
 
923
 
 
924
@<FWTestimonial@>@(
 
925
"...the manual is about 10 times better than any other user manual
 
926
I've ever read."
 
927
@,
 
928
Barry Dwyer (dwyer@@cs.adelaide.edu.au)@<BR@>
 
929
Senior Lecturer, Department of Computer Science,@<BR@>
 
930
The University of Adelaide.@<BR@>
 
931
Australia.@<BR@>
 
932
17-Jun-1992 (Authorized to be quoted 21-Oct-1992).
 
933
@)
 
934
 
 
935
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(Portability@)
 
936
 
 
937
@<FWTestimonial@>@(
 
938
"I've done the regression testing, and it worked without a hitch.
 
939
You've done a nice job making the sucker portable. My system is a mono
 
940
NeXTstation running NeXTSTEP 2.1 with 16 MB of RAM."
 
941
@,
 
942
John Dawson (john@@arissoft.com)@<BR@>
 
943
Software Developer,@<BR@>
 
944
Arissoft Development Corporation,@<BR@>
 
945
Texas, USA.@<BR@>
 
946
11-Jun-1992. (Authorized to be quoted 17-Oct-1992).
 
947
@)
 
948
 
 
949
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(Coolness@)
 
950
 
 
951
@<FWTestimonial@>@(
 
952
"I use FunnelWeb for everything from my FutureBASIC programming to
 
953
maintaining my web pages. It is a cool tool, and one of the few
 
954
literate programming environments that are (1) language-independent
 
955
and (2) available on the Mac. I couldn't be more pleased with it."
 
956
@,
 
957
Ron Hale-Evans (rwhe@@apocalypse.org)@<BR@>
 
958
Author/Publisher,@<BR@>
 
959
Lexington, Kentucky, USA.@<BR@>
 
960
20-Oct-1996. (Authorized to be quoted 20-Oct-1996).
 
961
@)
 
962
 
 
963
@<Spider_up IMAGE/left@>@<FunnelWeb subheading@>@(Style@)
 
964
 
 
965
@<FWTestimonial@>@(
 
966
"Let me say that FunnelWeb is the most impressive
 
967
literate programming tool I have yet seen.  The language
 
968
is powerful, the tutorial manual excellent, and I really
 
969
love the new weave facility to output both TeX and HTML
 
970
(both of which are very visually appealing -- a rare feat
 
971
these days)."
 
972
@,
 
973
Paul Wanis (wanis@@hotmail.com)@<BR@>
 
974
Electrical Engineer,@<BR@>
 
975
San Diego, CA USA.@<BR@>
 
976
04-Jun-1999. (Authorized to be quoted 30-Dec-1999).
 
977
@)
 
978
 
 
979
@<Begin size4@>
 
980
 
 
981
@<P@>@<BR@>Convinced that FunnelWeb is
 
982
@<Link@>@(@<Install FILE@>@,worth checking out?@)
 
983
 
 
984
@<P@>@<BR@>
 
985
 
 
986
@<End size4@>
 
987
 
 
988
@<End FunnelWeb page@>
 
989
@}
 
990
 
 
991
@!******************************************************************************
 
992
 
 
993
@$@<FunnelWeb Installation@>@M@{@-
 
994
<A HREF="install.shtml">FunnelWeb Installation</A>@}
 
995
 
 
996
@$@<Install FILE@>@Z@M@{install.shtml@}
 
997
@O@<install.shtml@>@{@-
 
998
@<Begin FunnelWeb page/install@>@(Installing FunnelWeb@)
 
999
 
 
1000
@<P@>FunnelWeb is available free of charge for a wide range of platforms.
 
1001
Just follow these steps.
 
1002
 
 
1003
@<FunnelWeb subheading@>@(1. FTP A FunnelWeb Executable@)
 
1004
 
 
1005
@<P@>Download a FunnelWeb executable now for any or all of
 
1006
the following platforms:
 
1007
 
 
1008
@<Begin indent@>
 
1009
@<FWDownload@>@(funnelweb_v320_mac.hqx@,FunnelWeb V3.2 for Macintosh-68K (147K)@)
 
1010
@<FWDownload@>@(funnelweb_v320_win32.zip@,FunnelWeb V3.2 for Windows 95/NT (126K)@)
 
1011
@<FWDownload@>@(funnelweb_v320_msdos.zip@,FunnelWeb V3.2 for MS-DOS (189K)@)
 
1012
@<FWDownload@>@(funnelweb_v320_bsdos.tar.Z@,FunnelWeb V3.2 for BSD/OS (168K)@)
 
1013
@<FWDownload@>@(funnelweb_v320_digunix.tar.Z@,FunnelWeb V3.2 for Digital Unix (161K)@)
 
1014
@<FWDownload@>@(funnelweb_v320_freebsd.tar.Z@,FunnelWeb V3.2 for FreeBSD (119K)@)
 
1015
@<FWDownload@>@(funnelweb_v320_irix.tar.Z@,FunnelWeb V3.2 for IRIX (168K)@)
 
1016
@<FWDownload@>@(funnelweb_v320_redhat.tar.Z@,FunnelWeb V3.2 for Red Hat Linux (119K)@)
 
1017
@<FWDownload@>@(funnelweb_v320_solaris.tar.Z@,FunnelWeb V3.2 for Solaris (133K)@)
 
1018
@<FWDownload@>@(funnelweb_v320_aix.tar.Z@,FunnelWeb V3.2 for AIX (166K)@)
 
1019
@<End indent@>
 
1020
 
 
1021
@<P@>FunnelWeb is provided under an open source GNU licence,
 
1022
so if your platform is not listed above, you are welcome to
 
1023
download the C source code and compile it on whatever
 
1024
platform you have. You can find instructions on how to
 
1025
compile FunnelWeb in the @<FunnelWeb Developer Manual@>.
 
1026
 
 
1027
@<Source download list@>
 
1028
 
 
1029
@<FunnelWeb subheading@>@(2. FTP The FunnelWeb Manuals@)
 
1030
 
 
1031
@<P@>The documentation for FunnelWeb consists of this main
 
1032
FunnelWeb web and three manuals, also in web form, which are
 
1033
online. You can browse them in a new browser window by clicking
 
1034
below:
 
1035
 
 
1036
@<P@>
 
1037
@<Begin indent@>
 
1038
@<FunnelWeb Main Web@>@<BR@>
 
1039
@<FunnelWeb Tutorial Manual@>@<BR@>
 
1040
@<FunnelWeb Reference Manual@>@<BR@>
 
1041
@<FunnelWeb Developer Manual@>@<BR@>
 
1042
@<End indent@>
 
1043
 
 
1044
@<P@>An alternative is to download all the manuals as an archive file
 
1045
and install them on your disk so that you can access them quickly, without
 
1046
going through the internet.
 
1047
 
 
1048
@<P@>
 
1049
@<Manual download list@>
 
1050
 
 
1051
@<FunnelWeb subheading@>@(3. Work Through The Tutorial@)
 
1052
 
 
1053
@<P@>To get started with FunnelWeb, work through the tutorial
 
1054
at the start of the
 
1055
 
 
1056
@<P@>
 
1057
@<Begin indent@>
 
1058
@<FunnelWeb Tutorial Manual@>@<BR@>
 
1059
@<End indent@>
 
1060
 
 
1061
@<P@>Once you've done that, you should try using FunnelWeb
 
1062
on a small project to get used to it. Then, once you're
 
1063
comfortable with FunnelWeb, try using it on a production
 
1064
project.
 
1065
 
 
1066
@<P@>If you want to see a real-world example, there is a
 
1067
complete package written using FunnelWeb at:
 
1068
 
 
1069
@<P@>
 
1070
@<Begin indent@>
 
1071
@<URL@>@(@<FunnelWeb FTP@>examples/except/@)
 
1072
@<End indent@>
 
1073
 
 
1074
@<P@>The package provides Ada-like exceptions for the
 
1075
C programming language. Among other things, the package
 
1076
demonstrates how FunnelWeb can be used to assist in the
 
1077
documentation of tricky code.
 
1078
 
 
1079
@<FunnelWeb subheading@>@(4. Subscribe To The FunnelWeb Mailing List@)
 
1080
 
 
1081
@<P@>@<Spider_left IMAGE/right@>If
 
1082
you like FunnelWeb, you can join the
 
1083
@<FunnelWeb Mailing List@>. This is a low-traffic mailing
 
1084
list so if
 
1085
you're unsure, you should subscribe. If you're not on the
 
1086
mailing list, you won't hear about new versions or other
 
1087
happenings that might happen!
 
1088
 
 
1089
@<End FunnelWeb page@>
 
1090
@}
 
1091
 
 
1092
@$@<Manual download list@>@M@{@-
 
1093
@<Begin indent@>
 
1094
 
 
1095
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_manuals_d.hqx@,@-
 
1096
FunnelWeb Manuals (Macintosh @<TT@>@(.hqx@) ~1.2M)@)@<BR@>
 
1097
 
 
1098
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_manuals_d.zip@,@-
 
1099
FunnelWeb Manuals (Wintel @<TT@>@(.zip@) ~0.8M)@)@<BR@>
 
1100
 
 
1101
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_manuals_d.tar.Z@,@-
 
1102
FunnelWeb Manuals (Unix @<TT@>@(.tar.Z@) ~0.8M)@)@<BR@>
 
1103
 
 
1104
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_manuals_d.tar.gz@,@-
 
1105
FunnelWeb Manuals (Unix @<TT@>@(.tar.gz@) ~0.5M)@)@<BR@>
 
1106
 
 
1107
@<End indent@>
 
1108
@}
 
1109
 
 
1110
@$@<Source download list@>@M@{@-
 
1111
@<Begin indent@>
 
1112
 
 
1113
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_source.hqx@,@-
 
1114
FunnelWeb Source Code (Macintosh @<TT@>@(.hqx@) ~0.7M)@)@<BR@>
 
1115
 
 
1116
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_source.zip@,@-
 
1117
FunnelWeb Source Code (Wintel @<TT@>@(.zip@) ~0.6M)@)@<BR@>
 
1118
 
 
1119
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_source.tar.Z@,@-
 
1120
FunnelWeb Source Code (Unix @<TT@>@(.tar.Z@) ~0.7M)@)@<BR@>
 
1121
 
 
1122
@<Link@>@(@<FunnelWeb FTP@>funnelweb_v320/funnelweb_v320_source.tar.gz@,@-
 
1123
FunnelWeb Source Code (Unix @<TT@>@(.tar.gz@) ~0.3M)@)@<BR@>
 
1124
 
 
1125
@<End indent@>
 
1126
@}
 
1127
 
 
1128
@$@<FWDownload@>@(@2@)@M@{@-
 
1129
<A HREF="@<FunnelWeb FTP@>funnelweb_v320/@1">@2</A><BR>@}
 
1130
 
 
1131
@!******************************************************************************
 
1132
 
 
1133
@$@<FunnelWeb Manuals@>@M@{@<Link@>@(@<Manuals FILE@>@,FunnelWeb Manuals@)@}
 
1134
@$@<Manuals FILE@>@Z@M@{manuals.shtml@}
 
1135
@O@<manuals.shtml@>@{
 
1136
@<Begin FunnelWeb page/manuals@>@(FunnelWeb Manuals@)
 
1137
 
 
1138
@<P@>FunnelWeb's documentation is organized into this
 
1139
main FunnelWeb web plus three subwebs.
 
1140
 
 
1141
@<P@>To browse one of these webs in a new window, just click on its
 
1142
hyperlink.
 
1143
 
 
1144
@<Begin indent@>
 
1145
 
 
1146
@<P@>@<Spider_up IMAGE/left@>@<B@>@(@<FunnelWeb Tutorial Manual@>:@)
 
1147
This manual contains an introductory
 
1148
tutorial to assist you in learning FunnelWeb. It also contains
 
1149
a description of some application and some general hints on using
 
1150
FunnelWeb.
 
1151
 
 
1152
@<P@>@<Spider_up IMAGE/left@>@<B@>@(@<FunnelWeb Reference Manual@>:@)
 
1153
This manual contains a concise
 
1154
definition of the entire functionality of FunnelWeb. Refer to this manual
 
1155
when you have a specific question about FunnelWeb's features or if
 
1156
you want to find out about FunnelWeb's more obscure features.
 
1157
 
 
1158
@<P@>@<Spider_up IMAGE/left@>@<B@>@(@<FunnelWeb Developer Manual@>:@)
 
1159
This manual is for those who
 
1160
want to obtain the FunnelWeb source code and compile their own
 
1161
version of FunnelWeb. This manual contains compilation instructions
 
1162
and a discussion of the licensing and language definition issues.
 
1163
 
 
1164
@<End indent@>
 
1165
 
 
1166
@<P@>You can also FTP an archive file of the webs and install them
 
1167
on your local disk for high-speed offline browsing.
 
1168
 
 
1169
@<P@>
 
1170
@<Manual download list@>
 
1171
 
 
1172
@<End FunnelWeb page@>
 
1173
@}
 
1174
 
 
1175
@!******************************************************************************
 
1176
 
 
1177
@$@<Support FILE@>@Z@M@{support.shtml@}
 
1178
@O@<support.shtml@>@{@-
 
1179
@<Begin FunnelWeb page/support@>@(FunnelWeb Support@)
 
1180
 
 
1181
@<FunnelWeb subheading@>@(FunnelWeb Documentation@)
 
1182
 
 
1183
@<P@>In addition to this main FunnelWeb web, three
 
1184
@<FunnelWeb Manuals@> are available online:
 
1185
 
 
1186
@<P@>
 
1187
@<Begin indent@>
 
1188
@<FunnelWeb Tutorial Manual@>@<BR@>
 
1189
@<FunnelWeb Reference Manual@>@<BR@>
 
1190
@<FunnelWeb Developer Manual@>@<BR@>
 
1191
@<End indent@>
 
1192
 
 
1193
@<P@>You can search this web and these manuals by keyword by
 
1194
visiting the @<Link@>@(@<FunnelWeb_search FILE@>@,search@)
 
1195
page of this web. These manuals can be downloaded too. See
 
1196
the @<FunnelWeb Manuals@> page for more information.
 
1197
 
 
1198
@<FunnelWeb subheading@>@(Mailing List@)
 
1199
 
 
1200
@<P@>Your next point of call after the manuals should be
 
1201
the @<FunnelWeb Mailing List@> to which many FunnelWeb
 
1202
users have subscribed. Post a message describing the
 
1203
problem you've encountered and see if you get a reply.
 
1204
 
 
1205
@<FunnelWeb subheading@>@(Informal Support@)
 
1206
 
 
1207
@<P@>You are welcome to @<email me@> questions about
 
1208
FunnelWeb, particularly about possible bugs. However, I can
 
1209
make absolutely no guarantees about how quickly I can
 
1210
respond to such questions as I receive a constant barrage of
 
1211
email in relation to the webs I have created. You are more
 
1212
likely to receive a response if you post a message to the
 
1213
mailing list. I'm on the mailing list anyway!
 
1214
 
 
1215
@<FunnelWeb subheading@>@(Formal Support@)
 
1216
 
 
1217
@<P@>FunnelWeb is not commercial software and no formal
 
1218
support @<DQ@>@(product@) is available. However, if for some
 
1219
reason, you require high quality responsive
 
1220
support, and are willing to pay for it, try emailing
 
1221
@<Email@>@(@<Rocksoft support EMAIL@>@) quoting the URL
 
1222
of this page and this paragraph, and perhaps they will be
 
1223
able to help.
 
1224
 
 
1225
@<End FunnelWeb page@>
 
1226
@}
 
1227
 
 
1228
@!******************************************************************************
 
1229
 
 
1230
@$@<FunnelWeb mailinglist EMAIL@>@M@{fw-users@@lists.internode.on.net@}
 
1231
@$@<FunnelWeb majordomo EMAIL@>@M@{majordomo@@lists.internode.on.net@}
 
1232
@$@<FunnelWeb mailinglist owner EMAIL@>@M@{owner-fw-users@@lists.internode.on.net@}
 
1233
@$@<FunnelWeb majorcool WWW@>@M@{http://lists.internode.on.net/@}
 
1234
@$@<FunnelWeb MAILINGLISTID@>@Z@M@{fw-users@}
 
1235
@$@<FunnelWeb web EMAIL@>@Z@M@{@<Ross web EMAIL@>@}
 
1236
 
 
1237
@$@<FunnelWeb Mailing List@>@M@{@-
 
1238
@<Link@>@(@<Mailing_list FILE@>@,FunnelWeb Mailing List@)@}
 
1239
 
 
1240
@$@<Mailing_list FILE@>@Z@M@{mailing_list.shtml@}
 
1241
@O@<mailing_list.shtml@>@{@-
 
1242
@<Begin FunnelWeb page/support@>@(FunnelWeb Mailing List@)
 
1243
 
 
1244
@<P@>@<Spider_left IMAGE/right@>The FunnelWeb Mailing List
 
1245
carries announcements about FunnelWeb, and general
 
1246
discussions about FunnelWeb by FunnelWeb users. The
 
1247
FunnelWeb Mailing List is a fairly low traffic mailing list,
 
1248
so if you want to be notified of new FunnelWeb developments,
 
1249
don't be afraid to subscribe!
 
1250
 
 
1251
@<P@>
 
1252
@<Begin indent@>
 
1253
@<Begin border@>@(1@)
 
1254
@<Begin table@>
 
1255
@<Row2/bold@>@(Name@,FunnelWeb Mailing List@)
 
1256
@<Row2/bold@>@(Address@,@<Email@>@(@<FunnelWeb mailinglist EMAIL@>@)@)
 
1257
@<Row2/bold@>@(Majordomo@,@<Email@>@(@<FunnelWeb majordomo EMAIL@>@)@)
 
1258
@<Row2/bold@>@(Human@,@<Email@>@(@<FunnelWeb mailinglist owner EMAIL@>@)@)
 
1259
@<Row2/bold@>@(Web interface@,@<URL@>@(@<FunnelWeb majorcool WWW@>@)@)
 
1260
@<End table@>
 
1261
@<End border@>
 
1262
@<End indent@>
 
1263
 
 
1264
@<P@>You can subscribe or unsubscribe using the Majordomo
 
1265
email interface, the MajorCool web interface, or by filling
 
1266
in the following form:
 
1267
 
 
1268
@<P@>
 
1269
@<Begin form/action@>@(@<Mailing_list_modify CGIFILE@>@)
 
1270
@<Begin table@>
 
1271
@<Row2/bold@>@(Email:@,@<Form textfield@>@(@<Arg_Email@>@,30@)@)
 
1272
@<End table@>
 
1273
<BR>
 
1274
<INPUT TYPE="submit" NAME="@<Arg_Action@>" VALUE="@<Action_Unsubscribe@>">
 
1275
<INPUT TYPE="submit" NAME="@<Arg_Action@>" VALUE="@<Action_Subscribe@>">
 
1276
@<End form/nosubmitbutton@>
 
1277
 
 
1278
@<P@>
 
1279
@<Begin size3@>
 
1280
@<Strong@>@(Note:@) All messages posted to the FunnelWeb mailing
 
1281
list will be considered to be public postings that can be freely
 
1282
copied, archived, forwarded, reposted and in other ways disseminated,
 
1283
without permission having to be granted by the message's author.
 
1284
@<End size3@>
 
1285
 
 
1286
@<IFCopy@>@(
 
1287
@<Boldthing@>@(Note:@) This subscription web form is
 
1288
@<Blink@>@(@<B@>@(UNAVAILABLE@)@) because it invokes PERL
 
1289
scripts specific to the original web's webserver, and you
 
1290
are currently browsing a @<B@>@(copy@) of the
 
1291
original online web. If you wish to use this form, fvisit the
 
1292
mailing list page in the
 
1293
@<WindowLink@>@(@<FunnelWeb WWW/abs@>@,@-
 
1294
@<FunnelWeb WINDOWNAME@>@,Official Online FunnelWeb Website@).
 
1295
@)
 
1296
 
 
1297
@<End FunnelWeb page@>
 
1298
@}
 
1299
 
 
1300
@$@<Arg_Email@>@M@{Email@}
 
1301
@$@<Arg_Action@>@M@{Action@}
 
1302
@$@<Action_Subscribe@>@M@{Subscribe@}
 
1303
@$@<Action_Unsubscribe@>@M@{Unsubscribe@}
 
1304
 
 
1305
@!******************************************************************************
 
1306
 
 
1307
@$@<Mailing_list_modify CGIFILE@>@Z@M@{mailing_list_modify.cgi@}
 
1308
@O@<mailing_list_modify.cgi@>@{@-
 
1309
@<Begin www.ross.net CGI/PERL script@>
 
1310
 
 
1311
&form_parse_and_clean();
 
1312
if ($form{'@<Arg_Email@>'} eq '')
 
1313
  { &html_page('@<Mailing_list_modify_e_e HTFILE@>'); }
 
1314
if ($form{'@<Arg_Action@>'} eq '')
 
1315
  { &html_page('@<Mailing_list_modify_e_e HTFILE@>'); }
 
1316
 
 
1317
$email = $form{'@<Arg_Email@>'};
 
1318
if (!&email_address_is_legal($email))
 
1319
  { &html_page('@<Mailing_list_modify_e HTFILE@>'); }
 
1320
 
 
1321
$email_from = '@<FunnelWeb web EMAIL@>';
 
1322
$email_to   = '@<FunnelWeb majordomo EMAIL@>';
 
1323
$email_subj = 'FunnelWeb: Orders from the FunnelWeb web to Major Domo.';
 
1324
$email_cc   = $email;
 
1325
&email_open;
 
1326
if ($form{'@<Arg_Action@>'} eq "@<Action_Unsubscribe@>")
 
1327
  { &email_line("unsubscribe @<FunnelWeb MAILINGLISTID@> $email"); }
 
1328
else
 
1329
  { &email_line("subscribe @<FunnelWeb MAILINGLISTID@> $email"); }
 
1330
&email_close;
 
1331
 
 
1332
&html_page("@<Mailing_list_modify HTFILE@>");
 
1333
 
 
1334
@<End www.ross.net CGI/PERL script@>
 
1335
@}
 
1336
 
 
1337
@!==============================================================================
 
1338
 
 
1339
@$@<Mailing_list_modify HTFILE@>@M@{mailing_list_modify.txt@}
 
1340
@O@<mailing_list_modify.txt@>@{
 
1341
@<Begin FunnelWeb page/support@>@(Mailing List Request Forwarded@)
 
1342
 
 
1343
@<P@>Your mailing list request has been forwarded to the
 
1344
MajorDomo mailing list server at
 
1345
@<Email@>@(@<FunnelWeb majordomo EMAIL@>@),
 
1346
with a copy sent to you. You should
 
1347
receive a confirmation from the MajorDomo server by email
 
1348
soon.
 
1349
 
 
1350
@<Back button@>@(Back to the mailing list page@)
 
1351
 
 
1352
@<End FunnelWeb page@>
 
1353
@}
 
1354
 
 
1355
@!==============================================================================
 
1356
 
 
1357
@$@<Mailing_list_modify_e_e HTFILE@>@M@{mailing_list_modify_e_e.txt@}
 
1358
@O@<mailing_list_modify_e_e.txt@>@{
 
1359
@<Begin FunnelWeb page/support@>@(Error: A Field Is Empty@)
 
1360
 
 
1361
@<P@>A field in the form was left empty. Please return to the form,
 
1362
fill in the missing field and try again.
 
1363
 
 
1364
@<Back button@>@(Back to the form@)
 
1365
 
 
1366
@<End FunnelWeb page@>
 
1367
@}
 
1368
 
 
1369
@!==============================================================================
 
1370
 
 
1371
@$@<Mailing_list_modify_e HTFILE@>@M@{mailing_list_modify_e.txt@}
 
1372
@O@<mailing_list_modify_e.txt@>@{
 
1373
@<Begin FunnelWeb page/support@>@(Error: Email Address Has Incorrect Syntax@)
 
1374
 
 
1375
@<P@>The email address that you provided is not a legal email address. Please
 
1376
return to the form and correct it.
 
1377
 
 
1378
@<P@>If you think that the address you have provided is legal, please email
 
1379
the @<FunnelWeb Webmaster@>
 
1380
so that this check can be loosened.
 
1381
 
 
1382
@<P@>
 
1383
@<Back button@>@(Back to the form@)
 
1384
 
 
1385
@<End FunnelWeb page@>
 
1386
@}
 
1387
 
 
1388
@!******************************************************************************
 
1389
 
 
1390
@$@<Links FILE@>@Z@M@{links.shtml@}
 
1391
@O@<links.shtml@>@{@-
 
1392
@<Begin FunnelWeb page/links@>@(FunnelWeb Links@)
 
1393
 
 
1394
@<FunnelWeb subheading@>@(FunnelWeb Variants@)
 
1395
 
 
1396
@<P@>@<Spider_up IMAGE/left@>@<Tony Coates@> has created a
 
1397
@<Link/blank@>@(http://www.internetezy.com.au/~abcoates/funnelweb.html@,FunnelWeb variant@)
 
1398
called FunnelWeb V3.05AC (a variant of FunnelWeb V3.0  - an
 
1399
earlier version) that provides some extra useful features.
 
1400
As this is an unofficial version, it's features are not
 
1401
guaranteed to appear in future official versions of
 
1402
FunnelWeb.
 
1403
 
 
1404
@<FunnelWeb subheading@>@(Newsgroups@)
 
1405
 
 
1406
@<P@>@<Newsgroup@>@(comp.programming.literate@) - This is the
 
1407
newsgroup for Literate Programming. It carried quite a bit of
 
1408
traffic in the early 1990s, but (as at 1999) traffic appears
 
1409
to be very low.
 
1410
 
 
1411
@<P@>@<Newsgroup@>@(comp.doc@) A newsgroup about documentation.
 
1412
Again, a very low traffic group.
 
1413
 
 
1414
@<FunnelWeb subheading@>@(Literate Programming Links@)
 
1415
 
 
1416
@<P@>@<Link/blank@>@(http://www.cs.cmu.edu/Groups/AI/html/faqs/lang/lit_prog/faq.html@,@-
 
1417
The Literate Programming FAQ@) - I think this was the FAQ that was used in
 
1418
@<Newsgroup@>@(comp.programming.literate@). This FAQ contains what appears to
 
1419
be a comprehensive list of literate programming tools.
 
1420
 
 
1421
@<P@>@<Link/blank@>@(http://liinwww.ira.uka.de/bibliography/SE/litprog.html@,@-
 
1422
A Bibliography of Literate Programming@) - A searchable bibliography.
 
1423
 
 
1424
@<P@>@<URL/http@>@(www.literateprogramming.com/home.html@) - Anyone who's bothered
 
1425
to register a domain called this deserves a link!
 
1426
 
 
1427
@<P@>@<Link/blank@>@(http://www.webring.org/cgi-bin/webring?ring=litprog;list@,@-
 
1428
The Literate Programming WebRing@) - A collection of literate programming webs
 
1429
organized into a ring.
 
1430
 
 
1431
@<P@>@<Link/blank@>@(http://dir.yahoo.com/Computers_and_Internet/Programming_Languages/Literate_Programming/@,@-
 
1432
The Yahoo Literate Programming Page@).
 
1433
 
 
1434
@<P@>@<Link/blank@>@(http://www.ems.uq.edu.au/Seminars/XML_LitProg/@,@-
 
1435
XML and Literate Programming@)
 
1436
 
 
1437
@<FunnelWeb subheading@>@(Other Literate Programming Tools@)
 
1438
 
 
1439
@<P@>@<Link/blank@>@(http://www.cs.virginia.edu/~nr/noweb/@,NoWeb Home Page@) - A
 
1440
minimalist literate programming tool.
 
1441
 
 
1442
@<P@>@<Link/blank@>@(http://www.mailbag.com/users/edream/front.html@,@-
 
1443
The LEO Outlining Literate Programming Tool For Macintosh@) - Sounds
 
1444
interesting (but I haven't looked at it yet).
 
1445
 
 
1446
@<P@>There are lots of other tools out there too.
 
1447
 
 
1448
@<FunnelWeb subheading@>@(Literate Programming People@)
 
1449
 
 
1450
@<P@>@<Donald Knuth@> - The inventor of literate programming.
 
1451
 
 
1452
@<P@>@<Ross Williams@> - The creator of FunnelWeb.
 
1453
 
 
1454
@<P@>@<Tony Coates@> - Creator of a variant of FunnelWeb (see above).
 
1455
 
 
1456
@<P@>The page
 
1457
@<URL/http@>@(www.literateprogramming.com/links.html@)
 
1458
contains a comprehensive-looking list of people involved
 
1459
with literate programming.
 
1460
 
 
1461
@<FunnelWeb subheading@>@(Books And Papers@)
 
1462
 
 
1463
@<P@>Knuth@<_@>D.E., @<DQ@>@(The WEB System
 
1464
of Structured Documentation@), (Web User Manual,
 
1465
Version@<_@>2.5, November, 1983), Stanford University, 1983.
 
1466
 
 
1467
@<P@>Knuth@<_@>D.E., @<DQ@>@(The TeXbook@),
 
1468
Addison-Wesley, (ISBN: 0-201-13448-9), 1984.
 
1469
 
 
1470
@<P@>Knuth@<_@>D.E., @<DQ@>@(Literate
 
1471
Programming@), @<I@>@(The Computer Journal@), Vol.@<_@>27,
 
1472
No.@<_@>2, pp.@<_@>97-111, 1984. (Reference copied
 
1473
from SIGPLAN 26(1) p.16). Note: The author of this manual
 
1474
has not yet obtained this paper.
 
1475
 
 
1476
@<P@>Knuth@<_@>D.E.,
 
1477
Literate Programming,
 
1478
CSLI, 1992, @<Link/blank@>@(http://www.amazon.com/exec/obidos/ASIN/0937073806/@,ISBN: 0-9370-7380-6@).
 
1479
 
 
1480
@<P@>Smith@<_@>L.M.C., @<DQ@>@(An Annotated
 
1481
Bibliography of Literate Programming@), ACM SIGPLAN Notices,
 
1482
Vol.@<_@>26, No.@<_@>1, January 1991.
 
1483
 
 
1484
@<End FunnelWeb page@>
 
1485
@}
 
1486
 
 
1487
@!******************************************************************************
 
1488
@!******************************************************************************
 
1489
 
 
1490
@$@<Copyright FILE@>@M@{copyright.shtml@}
 
1491
@O@<copyright.shtml@>@{@-
 
1492
@<Begin FunnelWeb page/home@>@(Copyright and Credits@)
 
1493
 
 
1494
@<FunnelWeb webs copyright page contents@>
 
1495
 
 
1496
@<End FunnelWeb page@>
 
1497
@}
 
1498
 
 
1499
@!******************************************************************************
 
1500
 
 
1501
@O@<linktome.shtml@>@{@-
 
1502
@<Begin FunnelWeb page/links@>@(Links To This Web@)
 
1503
 
 
1504
@<P@>Here's how you can link to this web:
 
1505
 
 
1506
@<FunnelWeb subheading@>@(Icon And Text@)
 
1507
 
 
1508
@<P@>If you want to create a graphical link, you can use the
 
1509
FunnelWeb 32x64 logo:
 
1510
 
 
1511
@<P@><A HREF="@<FunnelWeb WWW@>">
 
1512
<IMG SRC="@<Bin@>linklogo.gif"
 
1513
 ALT="[FunnelWeb Logo]"
 
1514
 HSPACE="5"  VSPACE="5"
 
1515
 HEIGHT="32" WIDTH="64"
 
1516
 BORDER="0" ALIGN="absmiddle">FunnelWeb</A>
 
1517
 
 
1518
@<P@>To do this, simply copy the image file
 
1519
 
 
1520
@<Begin indent@>
 
1521
@<URL@>@(@<FunnelWeb WWW/abs@>@<BinName@>/linklogo.gif@)
 
1522
@<End indent@>
 
1523
 
 
1524
@<P@>into your web and then copy the following HTML code.
 
1525
 
 
1526
@<P@>
 
1527
@<Begin verbatim/size3@>
 
1528
   &lt;A HREF="@<FunnelWeb WWW/abs@>"&gt;
 
1529
   &lt;IMG SRC="linklogo.gif"
 
1530
    ALT="[FunnelWeb Logo]"
 
1531
    HSPACE="5"  VSPACE="5"
 
1532
    HEIGHT="32" WIDTH="64"
 
1533
    BORDER="0"
 
1534
    ALIGN="absmiddle"&gt;FunnelWeb&lt;/A&gt;
 
1535
@<End verbatim/size3@>
 
1536
 
 
1537
@<FunnelWeb subheading@>@(Text Only@)
 
1538
 
 
1539
@<P@>To add a straightforward link such as
 
1540
@<FunnelWeb@>
 
1541
simply cut and paste the following HTML code:
 
1542
 
 
1543
@<P@>
 
1544
@<Begin size3@>
 
1545
@<Begin verbatim@>
 
1546
     &lt;A HREF="@<FunnelWeb WWW/abs@>">FunnelWeb&lt;/A>
 
1547
@<End verbatim@>
 
1548
@<End size3@>
 
1549
 
 
1550
@<FunnelWeb subheading@>@(URL Stability@)
 
1551
 
 
1552
@<P@>As these pages may be revised from time to time, it is not guaranteed
 
1553
that any particular page will have the same name from month to month,
 
1554
or even that it will persist. So if you want to link to these pages,
 
1555
it would be best to link to @<URL@>@(@<FunnelWeb WWW/abs@>@) as this
 
1556
is likely to be this web's most persistent URL.
 
1557
 
 
1558
@<End FunnelWeb page@>
 
1559
@}
 
1560
 
 
1561
@!******************************************************************************
 
1562
 
 
1563
@B@<Search Form Section@>
 
1564
 
 
1565
The files in this section are all linked in with the FunnelWeb
 
1566
include file.
 
1567
 
 
1568
@O@<search.html@>@{@-
 
1569
@<Begin FunnelWeb page/search@>@(Search FunnelWeb Documentation@)
 
1570
 
 
1571
@<FunnelWeb search form@>@(checked@,@,@,@)
 
1572
 
 
1573
@<End FunnelWeb page@>
 
1574
@}
 
1575
 
 
1576
@!==============================================================================
 
1577
 
 
1578
@O@<search_form.cgi@>@{@-
 
1579
@<FunnelWeb search CGICODE@>
 
1580
@}
 
1581
 
 
1582
@!==============================================================================
 
1583
 
 
1584
@O@<search_head.txt@>@{@-
 
1585
@<Begin FunnelWeb page/search@>@(Search Results@)
 
1586
@<P@>
 
1587
@}
 
1588
 
 
1589
@!==============================================================================
 
1590
 
 
1591
@O@<search_tail.txt@>@{@-
 
1592
@<BR@>
 
1593
@<P@>@<Back button@>@(Back To The Search Form@)
 
1594
@<BR@>
 
1595
 
 
1596
@<End FunnelWeb page@>
 
1597
@}
 
1598
 
 
1599
@!==============================================================================
 
1600
 
 
1601
@O@<search_e_nokeywords.txt@>@{@-
 
1602
@<Begin FunnelWeb page/search@>@(Error: No Keywords Specified@)
 
1603
 
 
1604
@<P@>You must specify one or more keywords to perform a search.
 
1605
 
 
1606
@<P@>@<Back button@>@(Back To The Search Form@)
 
1607
 
 
1608
@<End FunnelWeb page@>
 
1609
@}
 
1610
 
 
1611
@!==============================================================================
 
1612
 
 
1613
@O@<search_e_nomanual.txt@>@{@-
 
1614
@<Begin FunnelWeb page/search@>@(Error: No Manual Selected@)
 
1615
 
 
1616
@<P@>You must specify one or more manuals (using the checkboxes) to
 
1617
perform a search.
 
1618
 
 
1619
@<P@>@<Back button@>@(Back To The Search Form@)
 
1620
 
 
1621
@<End FunnelWeb page@>
 
1622
@}
 
1623
 
 
1624
@!******************************************************************************
 
1625
 
 
1626
@$@<Sidebar CGIFILE@>@M@{sidebar.cgi@}
 
1627
@O@<sidebar.cgi@>@{@-
 
1628
@<Begin www.ross.net CGI/PERL script@>
 
1629
 
 
1630
# The content header is required even for Server Side Includes.
 
1631
&html_write_standard_content_header;
 
1632
 
 
1633
# Read in the quotes file.
 
1634
@@quotes = &file_read_paragraphs("@<Quotes FILE@>");
 
1635
 
 
1636
# Print a random quote.
 
1637
$quoteno = &random_0_nmo(scalar @@quotes);
 
1638
print "@@quotes[$quoteno]\n";
 
1639
 
 
1640
@<End www.ross.net CGI/PERL script@>
 
1641
@}
 
1642
 
 
1643
@!==============================================================================
 
1644
 
 
1645
@$@<Dynamic sidebar note@>@Z@M@{
 
1646
<CENTER>
 
1647
<TABLE WIDTH="100" BORDER="0">
 
1648
@<Row1@>@(
 
1649
@<Begin size2@>
 
1650
@<Red_pin IMAGE/left@>
 
1651
<!--#exec cgi="@<Sidebar CGIFILE@>" -->
 
1652
@<End size2@>
 
1653
@)
 
1654
@<End table@>
 
1655
</CENTER>
 
1656
@}
 
1657
 
 
1658
@!==============================================================================
 
1659
 
 
1660
@$@<Quotes FILE@>@{quotes.txt@}
 
1661
@O@<quotes.txt@>@{@-
 
1662
 
 
1663
FunnelWeb can generate TeX and HTML documentation.
 
1664
 
 
1665
FunnelWeb is available free of charge under a GNU licence.
 
1666
 
 
1667
FunnelWeb is available for many different platforms.
 
1668
 
 
1669
FunnelWeb is a language-independent literate programming tool.
 
1670
 
 
1671
"I've been fooling around with FunnelWeb for about three days now, and
 
1672
I'm convinced that this is one of the most powerful tools I have
 
1673
encountered in almost two decades of programming" -- Jerry Callen, 1992.
 
1674
 
 
1675
"FunnelWeb forced me to reorganise the code a bit, to get my concepts
 
1676
straight. By the time I did this, and documented what I was doing, ...
 
1677
It looked good, and worked in a few passes." -- John Skaller, 1992.
 
1678
 
 
1679
"I use FunnelWeb for everything from my FutureBASIC programming to
 
1680
maintaining my web pages. It is a cool tool, and one of the few
 
1681
literate programming environments that are (1) language-independent
 
1682
and (2) available on the Mac. I couldn't be more pleased with it."
 
1683
-- Ron Hale-Evans, 1996.
 
1684
 
 
1685
"Let me say that FunnelWeb is the most impressive
 
1686
literate programming tool I have yet seen.  The language
 
1687
is powerful, the tutorial manual excellent, and I really
 
1688
love the new weave facility to output both TeX and HTML."
 
1689
-- Paul Wanis, 1999.
 
1690
 
 
1691
Join the @<FunnelWeb Mailing List@>!
 
1692
 
 
1693
FunnelWeb is free of charge. It's distributed under a GNU licence.
 
1694
 
 
1695
Write your open source software using
 
1696
FunnelWeb and use it to publish your source code on the web!
 
1697
 
 
1698
"@<B@>@(F@) is for Funnel-web,
 
1699
Our furry-legged foe.
 
1700
He sleeps in your slipper,
 
1701
And breakfasts on toe."
 
1702
---  Dame Edna Everage, 1991.
 
1703
 
 
1704
Use FunnelWeb's +D argument to suppress
 
1705
unnecessary Make cascades.
 
1706
 
 
1707
FunnelWeb was created in 1986 before the World Wide
 
1708
Web was created, but has proven be an excellent
 
1709
tool for creating webs!
 
1710
 
 
1711
@}
 
1712
 
 
1713
@!******************************************************************************
 
1714
 
 
1715
@O@<protect.cgi@>@{@-
 
1716
@<Begin www.ross.net CGI/PERL script@>
 
1717
 
 
1718
require('lib_protect.pl');
 
1719
 
 
1720
&protect_dir_binary('.',0755);
 
1721
&protect_dir_binary('./reference',0755);
 
1722
&protect_dir_binary('./tutorial',0755);
 
1723
&protect_dir_binary('./developer',0755);
 
1724
&protect_page;
 
1725
 
 
1726
@<End www.ross.net CGI/PERL script@>
 
1727
@}
 
1728
 
 
1729
@!******************************************************************************
 
1730
 
 
1731
@O@<0cleanup.vxf@>@{@-
 
1732
eneo *.html
 
1733
eneo *.shtml
 
1734
eneo *.cgi
 
1735
eneo *.txt
 
1736
eneo *.lis
 
1737
eneo *.pl
 
1738
@}
 
1739
 
 
1740
@O@<0cleanup_all.vxf@>@{@-
 
1741
eneo *.html
 
1742
eneo *.shtml
 
1743
eneo *.cgi
 
1744
eneo *.txt
 
1745
eneo *.lis
 
1746
eneo *.pl
 
1747
 
 
1748
eneo :developer:*.html
 
1749
eneo :developer:*.shtml
 
1750
eneo :developer:*.cgi
 
1751
eneo :developer:*.txt
 
1752
eneo :developer:*.lis
 
1753
eneo :developer:*.pl
 
1754
 
 
1755
eneo :reference:*.html
 
1756
eneo :reference:*.shtml
 
1757
eneo :reference:*.cgi
 
1758
eneo :reference:*.txt
 
1759
eneo :reference:*.lis
 
1760
eneo :reference:*.pl
 
1761
 
 
1762
eneo :tutorial:*.html
 
1763
eneo :tutorial:*.shtml
 
1764
eneo :tutorial:*.cgi
 
1765
eneo :tutorial:*.txt
 
1766
eneo :tutorial:*.lis
 
1767
eneo :tutorial:*.pl
 
1768
 
 
1769
@}
 
1770
 
 
1771
@!******************************************************************************
 
1772
 
 
1773
@! Include the FunnelWeb webs master include file.
 
1774
@i 0fw_inc.fwi
 
1775
@i 0www_style.fwi
 
1776
@i 0www_links.fwi
 
1777
@i 0www_ross.fwi
 
1778
 
 
1779
@!******************************************************************************
 
1780
@!******************************************************************************