34cb8eda276898c3848da5259300d7fa472491ab
[charm.git] / doc / pplmanual.sty
1 \NeedsTeXFormat{LaTeX2e}
2 \typeout{^^J^^J
3 Parallel Programming Laboratory^^J
4 Manual Style^^J
5 Written by Milind A. Bhandarkar, 12/00^^J}
6
7 %%% Make it possible for both ps and pdf to be generated
8 \newif\ifpdf
9 \ifx\pdfoutput\undefined
10   \pdffalse
11 \else
12   \pdfoutput=1
13   \pdftrue
14 \fi
15
16 \ifpdf
17   \pdfcompresslevel=9
18 \fi
19
20 %%% Imported from fullpage.sty, since it is not always available
21 \topmargin 0pt
22 \advance \topmargin by -\headheight
23 \advance \topmargin by -\headsep
24
25 \textheight 8.9in
26
27 \oddsidemargin 0pt
28 \evensidemargin \oddsidemargin
29 \marginparwidth 1.0in
30
31 \textwidth 6.5in
32 %%% end import from fullpage
33
34 %%% Commonly Needed packages
35 \usepackage{graphicx,color,calc}
36 \usepackage{makeidx}
37 \usepackage{alltt}
38
39 %%% Commands for uniform looks of C++, Charm++, and Projections
40 \newcommand{\CC}{C\kern -0.0em\raise 0.5ex\hbox{\normalsize++}}
41 \newcommand{\emCC}{C\kern -0.0em\raise 0.4ex\hbox{\normalsize\em++}}
42 \newcommand{\charmpp}{\sc Charm++}
43 \newcommand{\projections}{\sc Projections}
44 \newcommand{\converse}{\sc Converse}
45 \newcommand{\ampi}{\sc AMPI}
46
47 %%% Commands to produce margin symbols
48 \newcommand{\new}{\marginpar{\fbox{\bf$\mathcal{NEW}$}}}
49 \newcommand{\important}{\marginpar{\fbox{\bf\Huge !}}}
50 \newcommand{\experimental}{\marginpar{\fbox{\bf\Huge $\beta$}}}
51
52 %%% Commands for manual elements
53 \newcommand{\zap}[1]{ }
54 \newcommand{\function}[1]{{\noindent{\textsf{#1}}\\}}
55 \newcommand{\cmd}[1]{{\noindent{\textsf{#1}}\\}}
56 \newcommand{\args}[1]{\hspace*{2em}{\texttt{#1}}\\}
57 \newcommand{\param}[1]{{\texttt{#1}}}
58 \newcommand{\kw}[1]{{\textsf{#1}}}
59 \newcommand{\uw}[1]{{\textsl{#1}}}
60 \newcommand{\desc}[1]{\indent{#1}}
61
62 %%% Commands needed for Maketitle
63 \newcommand{\@version}{}
64 \newcommand{\@credits}{}
65 \newcommand{\version}[1]{\renewcommand{\@version}{#1}}
66 \newcommand{\credits}[1]{\renewcommand{\@credits}{#1}}
67
68 %%% Print the License Page
69 \newcommand{\@license}{%
70  \begin{center}
71    {University of Illinois}\\
72    {\charmpp/\converse\ Parallel Programming System Software}\\
73    {Non-Exclusive, Non-Commercial Use License}\\
74  \end{center}
75  \rule{\textwidth}{1pt}
76 {\tiny
77 Upon execution of this Agreement by the party identified below (``Licensee''),
78 The Board of Trustees of the University of Illinois  (``Illinois''), on behalf
79 of The Parallel Programming Laboratory (``PPL'') in the Department of Computer
80 Science, will provide the \charmpp/\converse\ Parallel Programming System
81 software (``\charmpp'') in Binary Code and/or Source Code form (``Software'')
82 to Licensee, subject to the following terms and conditions. For purposes of
83 this Agreement, Binary Code is the compiled code, which is ready to run on
84 Licensee's computer.  Source code consists of a set of files which contain the
85 actual program commands that are compiled to form the Binary Code.
86
87 \begin{enumerate}
88   \item
89     The Software is intellectual property owned by Illinois, and all right,
90 title and interest, including copyright, remain with Illinois.  Illinois
91 grants, and Licensee hereby accepts, a restricted, non-exclusive,
92 non-transferable license to use the Software for academic, research and
93 internal business purposes only, e.g. not for commercial use (see Clause 7
94 below), without a fee.
95
96   \item 
97     Licensee may, at its own expense, create and freely distribute
98 complimentary works that interoperate with the Software, directing others to
99 the PPL server (\texttt{http://charm.cs.uiuc.edu}) to license and obtain the
100 Software itself. Licensee may, at its own expense, modify the Software to make
101 derivative works.  Except as explicitly provided below, this License shall
102 apply to any derivative work as it does to the original Software distributed by
103 Illinois.  Any derivative work should be clearly marked and renamed to notify
104 users that it is a modified version and not the original Software distributed
105 by Illinois.  Licensee agrees to reproduce the copyright notice and other
106 proprietary markings on any derivative work and to include in the documentation
107 of such work the acknowledgement:
108
109 \begin{quote}
110 ``This software includes code developed by the Parallel Programming Laboratory
111 in the Department of Computer Science at the University of Illinois at
112 Urbana-Champaign.''
113 \end{quote}
114
115 Licensee may redistribute without restriction works with up to 1/2 of their
116 non-comment source code derived from at most 1/10 of the non-comment source
117 code developed by Illinois and contained in the Software, provided that the
118 above directions for notice and acknowledgement are observed.  Any other
119 distribution of the Software or any derivative work requires a separate license
120 with Illinois.  Licensee may contact Illinois (\texttt{kale@cs.uiuc.edu}) to
121 negotiate an appropriate license for such distribution.
122
123   \item
124     Except as expressly set forth in this Agreement, THIS SOFTWARE IS PROVIDED
125 ``AS IS'' AND ILLINOIS MAKES NO REPRESENTATIONS AND EXTENDS NO WARRANTIES OF
126 ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OR
127 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, OR THAT THE USE OF THE
128 SOFTWARE WILL NOT INFRINGE ANY PATENT, TRADEMARK, OR OTHER RIGHTS.  LICENSEE
129 ASSUMES THE ENTIRE RISK AS TO THE RESULTS AND PERFORMANCE OF THE SOFTWARE
130 AND/OR ASSOCIATED MATERIALS.  LICENSEE AGREES THAT UNIVERSITY SHALL NOT BE HELD
131 LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, OR INCIDENTAL DAMAGES WITH
132 RESPECT TO ANY CLAIM BY LICENSEE OR ANY THIRD PARTY ON ACCOUNT OF OR ARISING
133 FROM THIS AGREEMENT OR USE OF THE SOFTWARE AND/OR ASSOCIATED MATERIALS.
134
135   \item 
136     Licensee understands the Software is proprietary to Illinois. Licensee
137 agrees to take all reasonable steps to insure that the Software is  protected
138 and secured from unauthorized disclosure, use, or release and  will treat it
139 with at least the same level of care as Licensee would use to  protect and
140 secure its own proprietary computer programs and/or information, but using no
141 less than a reasonable standard of care.  Licensee agrees to provide the
142 Software only to any other person or entity who has registered with Illinois.
143 If licensee is not registering as an individual but as an institution or
144 corporation each member of the institution or corporation who has access to or
145 uses Software must agree to and abide by the terms of this license. If Licensee
146 becomes aware of any unauthorized licensing, copying or use of the Software,
147 Licensee shall promptly notify Illinois in writing. Licensee expressly agrees
148 to use the Software only in the manner and for the specific uses authorized in
149 this Agreement.
150
151   \item
152     By using or copying this Software, Licensee agrees to abide by the
153 copyright law and all other applicable laws of the U.S. including, but not
154 limited to, export control laws and the terms of this license. Illinois  shall
155 have the right to terminate this license immediately by written  notice upon
156 Licensee's breach of, or non-compliance with, any terms of the license.
157 Licensee may be held legally responsible for any  copyright infringement that
158 is caused or encouraged by its failure to  abide by the terms of this license.
159 Upon termination, Licensee agrees to  destroy all copies of the Software in its
160 possession and to verify such  destruction in writing.
161
162   \item
163   The user agrees that any reports or published results obtained with  the
164 Software will acknowledge its use by the appropriate citation as  follows:
165
166 \begin{quote}
167 ``\charmpp/\converse\ was developed by the Parallel Programming Laboratory in
168 the Department of Computer Science at the University of  Illinois at
169 Urbana-Champaign.''
170 \end{quote}
171
172 Any published work which utilizes \charmpp\ shall include the following
173 reference:
174
175 \begin{quote}
176 ``L. V. Kale and S. Krishnan. \charmpp: Parallel Programming with Message-Driven
177 Objects. In 'Parallel Programming using \CC' (Eds. Gregory V. Wilson and Paul
178 Lu), pp 175-213, MIT Press, 1996.''
179 \end{quote}
180
181 Any published work which utilizes \converse\ shall include the following
182 reference:
183
184 \begin{quote}
185 ``L. V. Kale, Milind Bhandarkar, Narain Jagathesan, Sanjeev Krishnan and Joshua
186 Yelon. \converse: An Interoperable Framework for Parallel Programming.
187 Proceedings of the 10th International Parallel Processing Symposium, pp
188 212-217, April 1996.''
189 \end{quote}
190
191 Electronic documents will include a direct link to the official \charmpp\ page
192 at \texttt{http://charm.cs.uiuc.edu/}
193
194   \item
195     Commercial use of the Software, or derivative works based thereon,
196 REQUIRES A COMMERCIAL LICENSE.  Should Licensee wish to make commercial use of
197 the Software, Licensee will contact Illinois (kale@cs.uiuc.edu) to negotiate an
198 appropriate license for such use. Commercial use includes: 
199
200     \begin{enumerate}
201       \item
202         integration of all or part of the Software into a product for sale,
203 lease or license by or on behalf of Licensee to third parties, or 
204
205       \item
206         distribution of the Software to third parties that need it to
207 commercialize product sold or licensed by or on behalf of Licensee.
208     \end{enumerate}
209
210   \item
211     Government Rights. Because substantial governmental funds have been  used
212 in the development of \charmpp/\converse, any possession, use or sublicense of
213 the Software by or to the United States government shall be subject to such
214 required restrictions.
215
216   \item
217     \charmpp/\converse\ is being distributed as a research and teaching tool
218 and as such, PPL encourages contributions from users of the code that might, at
219 Illinois' sole discretion, be used or incorporated to make the basic  operating
220 framework of the Software a more stable, flexible, and/or useful  product.
221 Licensees who contribute their code to become an internal  portion of the
222 Software agree that such code may be distributed by  Illinois under the terms
223 of this License and may be required to sign an  ``Agreement Regarding
224 Contributory Code for \charmpp/\converse\ Software'' before Illinois  can
225 accept it (contact \texttt{kale@cs.uiuc.edu} for a copy).
226 \end{enumerate}
227
228 UNDERSTOOD AND AGREED.
229
230 Contact Information:
231
232 The best contact path for licensing issues is by e-mail to
233 \texttt{kale@cs.uiuc.edu} or send correspondence to:
234
235 \begin{quote}
236 Prof. L. V. Kale\\
237 Dept. of Computer Science\\
238 University of Illinois\\
239 1304 W. Springfield Ave\\
240 Urbana, Illinois 61801 USA\\
241 FAX: (217) 333-3501
242 \end{quote}
243 }%tiny
244  \newpage
245 }% end of license
246
247 \renewcommand{\maketitle}{\begin{titlepage}%
248  \begin{flushright}
249    {\Large
250      Parallel Programming Laboratory\\
251      University of Illinois at Urbana-Champaign\\
252    }
253  \end{flushright}
254  \rule{\textwidth}{3pt}
255  \vspace{\fill}
256  \begin{flushright}
257    \textsf{\Huge \@title \\}
258  \end{flushright}
259  \vspace{\fill}
260  \@credits \\
261  \rule{\textwidth}{3pt}
262  \begin{flushright}
263    {\large Version \@version}
264  \end{flushright}
265  \end{titlepage}
266  \@license
267
268  \tableofcontents
269  \newpage
270 }% maketitle
271