% (C) Copyright International Business Machines Corporation 23 January 
% 1990.  All Rights Reserved. 
%  
% See the file USERAGREEMENT distributed with this software for full 
% terms and conditions of use. 
% File: user.tex  (the users guide for Hermes)
% SCCS Info: "@(#)user.tex	1.15 3/13/92"
\documentstyle [fullpage,chbars,11pt]{article}
 
% version-specific changebars... only one set of changes should be
% enabled (via cbenable) at any one time, else nested changebars might
% be attempted, and they're not supported

\def\cbenable#1{\expandafter\gdef\csname#1 changebars\endcsname{}}
\def\cb#1{\expandafter\ifx\csname#1 changebars\endcsname\relax
  \else\beginchange\fi}
\def\endcb#1{\expandafter\ifx\csname#1 changebars\endcsname\relax
  \else\endchange\fi}

%\cbenable{08a}

\setlength{\changebarwidth}{1pt}

\setlength{\parindent}{0in}    % no indented paragraphs
%\setlength{\topmargin}{0in}      % This sets the space on top of the page to
%\setlength{\headheight}{0in}     % an inch
%\setlength{\headsep}{0in}        % a little more than an inch
 
%\addtolength{\textheight}{1.0in}  % This has effect of making 1 in margin below
				 % page number at bot of page (otherwise it is
				 % larger margin)
%\setlength{\oddsidemargin}{0in}   % This sets the left margin on odd and even pages
%\setlength{\evensidemargin}{0in}  % to 1 inch + 0 inches.  (Default is more than 0)
 
%\addtolength{\textwidth}{+1.0in} % This has the effect of making right margin 1.5
			         % inch (otherwise it is 2.5 inch)
\input isil

\def\And#1{\end{tabular}\\[#1]\begin{tabular}[t]{c}} 
\title{Hermes: Unix User's Guide \\[1cm]
Version 0.8alpha\\[1cm]}
\author{Robert E. Strom\And{\medskipamount}\relax
David F. Bacon\and Arthur P. Goldberg\and Andy Lowry \and Bill Silverman \and Daniel Yellin\relax
\and Jim Russell \and Shaula Yemini\relax
\And{1cm} IBM T. J. Watson Research Center\thanks{PO Box 704,
Yorktown Heights, NY  10598}}

\begin{document}

\maketitle

\newpage

\tableofcontents

\newpage
\setlength{\parskip}{\baselineskip}  % skip a line between paragraphs

This user's guide describes how to use Hermes on Unix and overviews
the software tools distributed with the Hermes system.
Section~\ref{changelog} contains summaries of changes from prior
releases of the system.  Section~\ref{tutorial} explains how you can
run the sample programs appearing in the Hermes Tutorial.
Sections~\ref{Unix} and~\ref{compile} describes the mapping between
Unix files and Hermes modules, and explains how to use the Hermes
compiler.  Section~\ref{shell} presents a convenient environment for
running Hermes programs---the Hermes shell.  Section~\ref{mainIntf}
outlines capabilities provided to every root Hermes process.  These
capabilities enable a Hermes program to do I/O, invoke Unix commands
and system calls, and use other Hermes library programs.
Section~\ref{tools} presents programming tools provided with Hermes,
including a make facility, a windows package, and a resource manager.
Section~\ref{distributed} describes a set of services for executing
distributed Hermes programs.  Section~\ref{Unsupported} describes
features of Hermes that are unsupported and bugs in the current
release.

\cb{08a}
%Throughout this document, change bars in the margin indicate text that
%has been added or modified since the version of this document that
%accompanied Release 0.7alpha of Hermes.  Note that there is no
%indication of text that has been removed since 0.7alpha.
\endcb{08a}

\input changelog
\input tutorial
\input unix

\section{Tools}
\label{tools}

Included in the distribution of the Hermes system is a set of tools
for building applications.  Some of these tools can be found in the
directory hermes/tools. We will describe four tools below: a resource
manager, a Hermes make facility, a windows package, and a capability
for communicating with Hermes processes executing on remote machines.

\input rmanager
\input make
\input window
\input distributed

\input unsupported

\end{document}
