summaryrefslogtreecommitdiff
path: root/web/funnelAC/userman/u_ch5.tex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/funnelAC/userman/u_ch5.tex
Initial commit
Diffstat (limited to 'web/funnelAC/userman/u_ch5.tex')
-rw-r--r--web/funnelAC/userman/u_ch5.tex387
1 files changed, 387 insertions, 0 deletions
diff --git a/web/funnelAC/userman/u_ch5.tex b/web/funnelAC/userman/u_ch5.tex
new file mode 100644
index 0000000000..ab676074f8
--- /dev/null
+++ b/web/funnelAC/userman/u_ch5.tex
@@ -0,0 +1,387 @@
+%==============================================================================%
+% Start of Ch5.tex %
+%==============================================================================%
+%
+% Copyright
+% ---------
+% Copyright (C) 1992 Ross N. Williams.
+% This file contains a chapter of the FunnelWeb User's Manual.
+% See the main TeX file for this manual for further information.
+%
+%==============================================================================%
+
+\chapter{FunnelWeb Administration}
+\label{chapadministration}\xx{FunnelWeb}{administration}
+
+\section{Introduction}
+
+Whether a computer program is useful depends not just on the functionality
+provided by the program, but also on the totality of the culture
+and services surrounding it such as license costs, the
+quality of
+documentation, presence of a standard and so on.
+This chapter addresses these issues from a user perspective.
+
+\section{The User's Commitment To FunnelWeb}
+\xx{commitment}{FunnelWeb}
+
+One of the problems that might prevent potential users from using FunnelWeb
+is the level of commitment that it requires. As soon as the user starts
+creating FunnelWeb \p{.fw} files, the user becomes dependent on the
+FunnelWeb program, as the files so created will become unmanageable if
+the FunnelWeb program were to become unavailable for some reason.
+There are a number of ways in which computer programs can become unavailable,
+including operating system upgrades, copyright problems, inability to
+fix bugs, or just the inability of the program to be ported to a new target
+platform.
+
+The fact
+is that FunnelWeb defines an input language and that currently there is
+only one implementation of the language. Users will only write programs
+using that language if they feel comfortable about the availability of its
+implementation.
+
+I have been critically
+aware of these issues throughout the development of FunnelWeb and have
+taken every possible step to make FunnelWeb a solid base onto which to
+build programs. The following points describe the actions I have taken.
+
+\narrowthing{GNU license:}{FunnelWeb's C source code
+has been released under GNU General Public
+License Version 2. This means that the source code to FunnelWeb will always
+be available to anyone who wants it. The FunnelWeb program can never be
+taken away from you.}
+
+\narrowthing{Portability:}{FunnelWeb has been designed and written to be
+extremely portable. First, all FunnelWeb really does is read and write
+text files. This makes it easy to make portable. Second,
+FunnelWeb is written in the C programming language\paper{ANSI}
+with portability as
+a major design goal. Third, FunnelWeb has already been ported to four
+popular platforms: SunOS, VAX VMS, PC, and Macintosh and it should not prove
+hard to move it to others. Fourth, FunnelWeb comes with a huge automated
+regression test suite. This makes it easy to pinpoint problems when it
+is moved to a new platform. Portability is important because, even if \i{you}
+are not using FunnelWeb on some funny platform, you may want to send
+a computer program written using FunnelWeb to someone who does.}
+
+\narrowthing{Quality:}{The FunnelWeb source code is high quality code.
+Although it has not been formally developed under any particular coding
+standard, it is well designed and documented. Design decisions have
+not been taken lightly.}
+
+\narrowthing{Documentation:}{FunnelWeb is well documented by this manual
+and by the \i{FunnelWeb Hacker's Manual}. This is important because it
+means that if you want to send someone a program written using FunnelWeb,
+you can simply point them to this manual rather than having to explain
+it all yourself. It is also comforting for managers who are controlling
+source code to know that the format in which the source code is written
+is well-documented.}
+
+\narrowthing{Standardization:}{Users who create source files using FunnelWeb
+are not only committing to the FunnelWeb program; they are also investing
+in the FunnelWeb language. If FunnelWeb's language changes radically for
+some reason, then this investment by users will be undermined. To protect
+this investment, I intend to maintain an \dq{official} version of FunnelWeb
+whose language will not change radically, at least not
+in a non backward compatible manner.}
+
+It is my hope that the combination of these factors will alleviate any
+fears that users may have about committing their source files
+to FunnelWeb.
+
+\section{Documentation}
+\xx{FunnelWeb}{documentation}
+
+The following FunnelWeb documentation is available:
+
+\begin{verbatim}
+ "FunnelWeb User's Manual": Tutorial, Hints, Reference Manual.
+ "FunnelWeb Hacker's Manual": Notes on Design and Implementation.
+\end{verbatim}
+
+Everyone involved with FunnelWeb should read the \i{FunnelWeb User's Manual}.
+It contains everything you need to know about how to use FunnelWeb. In fact,
+you are reading it now!
+
+The \i{FunnelWeb Hacker's Manual}
+is for those who want to install, modify, fix,
+fiddle with, and generally hack the FunnelWeb C source code.
+
+Both of these manuals are shipped with the FunnelWeb distribution
+kit, and should be available on your machine in the form of LaTeX text
+files. If you cannot find them, you can obtain them from the
+FunnelWeb FTP archive (see Section~\ref{ftparchive}).
+
+\section{Registration}
+\label{registration}\xx{FunnelWeb}{registration}
+
+If you install or use FunnelWeb, please register by filling in and
+returning the registration form in \figregform{}.
+Feel free to expand the form if there is not enough room.
+
+
+\begin{figure}[htbp]
+\begin{verbatim}
+ +----------------------FunnelWeb Registration Form----------------------+
+ | 1. Date: |
+ | |
+ | 2. Title and name: |
+ | |
+ | 3. Internet email address: |
+ | |
+ | 4. Snail mail address: |
+ | |
+ | 5. Work phone number (country,area,number): |
+ | |
+ | 6. Which category of FunnelWeb user best describes you? |
+ | Latent - Installed FunnelWeb, but don't intend to use it. |
+ | Beginner - Haven't used FunnelWeb much yet; have an open mind. |
+ | Casual - Use FunnelWeb occasionally. |
+ | Convert - Use FunnelWeb to do most programming. |
+ | Fanatic - FunnelWeb has become a way of life. |
+ | |
+ | 7. What changes or new features would you like to see in FunnelWeb? |
+ | |
+ | |
+ | |
+ | |
+ | |
+ | |
+ | 8. Do you want to be kept informed of new FunnelWeb developments? |
+ | |
+ +-----------------------------------------------------------------------+
+\end{verbatim}
+\mylabel{\figregform{}: The FunnelWeb registration form.}{%
+%
+To register as a FunnelWeb user, please fill in this form and email it to
+\p{ross@spam.adelaide.edu.au}, or snail mail it to
+Ross Williams, 16 Lerwick Avenue, Hazelwood Park 5066, Australia.
+You may wish to make a contribution when you register.
+See Section~\ref{support} for more information.
+%
+}
+\end{figure}
+
+Email the form to \p{ross@spam.adelaide.edu.au}, or snail mail it to
+Ross Williams, 16 Lerwick Avenue, Hazelwood Park 5066, Australia.
+You may wish to make a contribution when you register.
+See Section~\ref{support} for more information.
+
+\section{Support}
+\xx{FunnelWeb}{support}\label{support}
+
+FunnelWeb is released \dq{as is} under a GNU license, and
+no formal support is available.
+You have the right to make changes to FunnelWeb
+and to use the modified versions created by random programmers.
+However, this is discouraged (see Section~\ref{modification}).
+
+In fact the support that is most needed is your financial
+support for the
+FunnelWeb developers! It has taken \i{months} of full-time \i{unpaid}
+work to bring FunnelWeb to you in its current form.
+I don't want to inconvenience users who install
+FunnelWeb, play with it, and then hardly ever use it.
+If you are in this category,
+please register, but don't bother contributing. However, if you find that
+FunnelWeb has become a useful programming tool, a
+contribution of some positive multiple of US\$50 would be appreciated.
+
+To make a contribution, send payment with a completed registration form
+(see Section~\ref{registration}) to:
+
+\begin{verbatim}
+ Renaissance Software Pty Ltd
+ Email: ross@spam.adelaide.edu.au
+ Snail: 16 Lerwick Avenue, Hazelwood Park 5066, Australia.
+\end{verbatim}
+
+Payment can be by personal or bank cheque to any bank in the world or by
+Visa or Mastercard. Please give the card name, number, expiry date, and
+the amount to be paid in US dollars. All contributions will be appreciated
+and will encourage further FunnelWeb development. However, no undertaking
+is made whatsoever about how the money will be used.
+
+\section{Copyright}
+\xx{copyright}{FunnelWeb}\xx{FunnelWeb}{license}\xx{GNU}{license}%
+\label{copyright}
+
+The FunnelWeb program is Copyright $\copyright$ 1992 Ross Williams.
+
+However, FunnelWeb has been released by the author and copyright owner Ross
+Williams (\p{ross@spam.adelaide.edu.au}) under Version 2 of the GNU General
+Public
+License published by the Free Software Foundation. Here are some ways
+that you can obtain a copy of this license.
+
+\begin{itemize}
+
+\item The license appears as an appendix in the \i{FunnelWeb Hacker's
+Manual}.
+
+\item If you have a working version of FunnelWeb, invoke it with
+\p{fw +hlicense +jlicense.txt}.
+
+\item Look in the \p{help} module of the FunnelWeb source code.
+
+\item FTP the license from \p{prep.ai.mit.edu} in \p{/pub/gnu/COPYING-2}.
+
+\item Write to the Free Software
+Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+\end{itemize}
+
+The license allows you to
+redistribute FunnelWeb and/or modify it under certain conditions.
+The license does not cover the \i{FunnelWeb User's Manual} and
+\i{FunnelWeb Hacker's Manual} which are distributed under a simpler
+license that prohibits changes.
+
+Note: FunnelWeb is distributed WITHOUT ANY WARRANTY; without even the
+implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+\section{Nowarranty}
+\x{warranty}
+
+Users of FunnelWeb should be aware that FunnelWeb comes with no
+warranty. Here is an extract from the GNU General Public License Version 2,
+under which
+FunnelWeb is distributed. For more information see Section~\ref{copyright}.
+
+\begin{verbatim}
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+ FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+ OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+ PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+ OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+ TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+ PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+ REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+ WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+ REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+ INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+ OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+ TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGES.
+\end{verbatim}
+
+\section{Distribution}
+\xx{FunnelWeb}{Distribution}
+
+Users of FunnelWeb should be aware that they can distribute the program
+freely.
+The following is an extract from the GNU General Public License Version 2,
+under which FunnelWeb is distributed.
+
+\begin{verbatim}
+ 1. You may copy and distribute verbatim copies of the Program's
+ source code as you receive it, in any medium, provided that you
+ conspicuously and appropriately publish on each copy an appropriate
+ copyright notice and disclaimer of warranty; keep intact all the
+ notices that refer to this License and to the absence of any warranty;
+ and give any other recipients of the Program a copy of this License
+ along with the Program.
+
+ You may charge a fee for the physical act of transferring a copy, and
+ you may at your option offer warranty protection in exchange for a fee.
+\end{verbatim}
+
+The license also allows you other freedoms.
+For more information see Section~\ref{copyright}.
+
+\section{Modification}
+\label{modification}
+
+FunnelWeb is distributed under a GNU license, and you are free to modify the
+source code and distribute modified copies (see Section~\ref{copyright}).
+However, there are good reasons why you should avoid doing this.
+
+\begin{enumerate}
+
+\item If you distribute modified versions of FunnelWeb, you run the risk of
+creating a version that will diverge from the \dq{official} version of
+FunnelWeb that I intend to maintain.
+
+\item If you release a version of FunnelWeb with a changed input language,
+users of your modified version will create source files that will no
+longer work on other versions of FunnelWeb. The result would be chaos.
+
+\end{enumerate}
+
+For these reasons I request that you do not distribute modified versions of
+FunnelWeb, particularly versions with a modified language. However, if you must
+distribute a version with a modified language, \i{please change its name}
+(\ie{}from \dq{FunnelWeb} to something else). Please also allocate a new
+file extension
+to replace \dqp{.fw} as the extension for source files written in the modified
+language.
+
+For more information, refer to the \i{FunnelWeb Hacker's Manual}.
+
+\section{Versions}
+\xx{FunnelWeb}{versions}
+
+FunnelWeb was created in 1986 and was used extensively by Ross Williams
+(\p{ross@spam.adelaide.edu.au}) for three years. However,
+Version~1.0 was written
+in Ada and was not very portable (it was fairly VAX/VMS specific).
+David Hulse
+(\p{dave@cs.adelaide.edu.au}) took the first step towards a
+release by translating
+the Ada code into C. Ross Williams then extensively reworked the C code, making
+it robust and portable, adding new features, and polishing it to its
+current form.
+
+\begin{verbatim}
+ Vers Lang Created Released Author Copyright Licensing
+ ---- ---- ------- -------- -------------- ------------- ---------
+ V1.0 Ada 1986 Never Ross Williams Ross Williams
+ V2.0 C 1989 Never David Hulse Public domain No restriction.
+ V3.0 C 1992 May-1992 Ross Williams Ross Williams GNU release.
+\end{verbatim}
+
+This manual was released for:
+
+\begin{verbatim}
+ * FunnelWeb V3.0.
+ * User's Manual V1.0.
+ * Hacker's Manual V1.0.
+ * TeX Definitions V1.0.
+\end{verbatim}
+
+\section{FTP Archive and Author}
+\label{ftparchive}%
+\xx{author}{contacting}\xx{ftp}{archive}\xx{FunnelWeb}{archive}
+
+The FunnelWeb FTP archive is:
+
+\begin{verbatim}
+ Machine : sirius.itd.adelaide.edu.au [IP=129.127.40.3].
+ Directory : ~pub/funnelweb/ (or a directory of similar name).
+\end{verbatim}
+
+The author of FunnelWeb and this manual is:
+
+\begin{verbatim}
+ Name: Dr Ross N. Williams
+ Email: ross@spam.adelaide.edu.au
+ Snail: 16 Lerwick Avenue, Hazelwood Park 5066, Australia.
+\end{verbatim}
+
+I intend to maintain an \dq{official} version of FunnelWeb which I will
+release under GNU license from time to time. I am happy to receive
+constructive criticism
+about FunnelWeb and its documentation.
+
+I will always be happy to receive mail about FunnelWeb, but cannot
+guarantee that I will be able to reply to it immediately.
+
+%==============================================================================%
+% End of Ch5.tex %
+%==============================================================================%