\documentclass[10pt]{article}

\usepackage{../pplmanual}
\input{../pplmanual}

\title{The\\ \charmpp\\ Programming Language\\ Manual}
\version{5.4 (Release 1)}
\credits{
{\small The Charm software was developed as a group effort.  The earliest
prototype, Chare Kernel(1.0), was developed by Wennie Shu and Kevin
Nomura working with Laxmikant Kale.  The second prototype, Chare
Kernel(2.0), a complete re-write with major design changes, was
developed by a team consisting of Wayne Fenton, Balkrishna Ramkumar,
Vikram Saletore, Amitabh B. Sinha and Laxmikant Kale. The translator
for Chare Kernel(2.0) was written by Manish Gupta.  Charm(3.0), with
significant design changes, was developed by a team consisting of
Attila Gursoy, Balkrishna Ramkumar, Amitabh B.  Sinha and Laxmikant
Kale, with a new translator written by Nimish Shah.  The \charmpp\ 
implementation was done by Sanjeev Krishnan.  Charm(4.0) included
\charmpp\ and was released in fall 1993.  Charm(4.5) was developed by
Attila Gursoy, Sanjeev Krishnan, Milind Bhandarkar, Joshua Yelon,
Narain Jagathesan and Laxmikant Kale.  Charm(4.8), developed by the
same team included Converse, a parallel runtime system that allows
interoperability among modules written using different paradigms
within a single application. \charmpp\ runtime system was re-targetted
at Converse. Syntactic extensions in \charmpp\ were dropped, and a
simple interface translator was developed that, along with the \charmpp\
runtime, became the \charmpp\ language.  The current version (5.4R1)
includes a complete rewrite of the \charmpp\ runtime system (using \CC)
and the interface translator (done by Milind Bhandarkar).  It also
includes several new features such as Chare Arrays (developed by
Robert Brunner and Orion Lawlor), and various libraries 
(written by Terry Wilmarth,
Gengbin Zheng, Laxmikant Kale, Zehra Sura, Milind Bhandarkar, Robert
Brunner, and Krishnan Varadarajan.) A coordination language
``Structured Dagger'' has been implemented on top of \charmpp\ (Milind
Bhandarkar), and included in this version.  
Several features have also been added to Converse. Dynamic
seed-based load balancing has been implemented (Terry Wilmarth and
Joshua Yelon), a client-server interface for Converse programs, and
debugging support has been added (Parthasarathy Ramachandran, Jeff
Wright, and Milind Bhandarkar).  Converse has been ported to new
platforms including ASCI Red (Joshua Yelon), Cray T3E (Robert
Brunner), and SGI Origin2000 (Milind Bhandarkar).  The test suite for
\charmpp\ was developed by Michael Lang, Jackie Wang, and Fang
Hu. Projections, the performance visualization and analysis tool, was
redesigned and rewritten using Java by Michael Denardo.
Orion Lawlor, Gengbin Zheng, and Milind Bhandarkar have been responsible
for the changes to the system since the last release.
}
}

\begin{document}

\maketitle

\input{intro}

\input{overview}

\section{The \charmpp\ Language}
  \input{modules}	
  \input{messages}
  \input{seqobjs}
  \input{chares}
  \input{groups}
  \input{nodegroups}
  \input{arrays}
  \input{readonly}    
  \input{quiesce}    
  \input{io}
  \input{othercalls}    

\input{inhertmplt}

\appendix

\input{sdag}

\input{further}

\input{index}

\end{document}
