\documentclass[10pt]{article}

\usepackage{fullpage}           % don't waste dead trees
\usepackage{psfig}              % to include postscript pictures
% \usepackage{array}              % required by dcolumn
\usepackage{setspace}           % installed by jch
% \usepackage{version}

% \excludeversion{EXCLUDE}{to be excluded}

\begin{document}

\newcommand{\nesl}{{\sc Nesl}}
\newcommand{\vcode}{{\sc Vcode}}
\newcommand{\cvl}{{\sc Cvl}}

\newcommand{\ts}[1]{{\small #1}}

\title{\Large\bf Interactive Simulations on the Web:\\Compiling \nesl\ into Java }

%\author{Jonathan C. Hardwick\\
%  \ts{CMU Computer Science Dept.}\\
%  \ts{5000 Forbes Avenue}\\
%  \ts{Pittsburgh, PA 15232.} \\
%  {\tt jch@cs.cmu.edu} \and
%  Girija Narlikar\\
%  \ts{CMU Computer Science Dept.}\\
%  \ts{5000 Forbes Avenue}\\
%  \ts{Pittsburgh, PA 15232.}\\
%  {\tt girija@cs.cmu.edu} \and 
%  Jay Sipelstein\\
%  \ts{Susquehanna Investment Group}\\
%  \ts{401 City Ave, Suite 220}\\
%  \ts{Bala Cynwyd PA 19004.}\\
%  {\tt sipelste@susq.com}}

\author{Jonathan C. Hardwick\thanks{
  CMU School of Computer Science,
  5000 Forbes Avenue,
  Pittsburgh, PA 15232.} \\
  {\tt jch@cs.cmu.edu} \and
  Girija Narlikar\thanks{
  CMU School of Computer Science,
  5000 Forbes Avenue,
  Pittsburgh, PA 15232.}
  \\{\tt girija@cs.cmu.edu} \and 
  Jay Sipelstein\thanks{
  Susquehanna Investment Group,
  401 City Ave,
  Suite 220,
  Bala Cynwyd PA 19004.}\\
  {\tt sipelste@susq.com}}

\date{}

\maketitle

\onehalfspacing

\begin{abstract}
  We motivate and describe the design and implementation of a system for
  compiling the high-level programming language \nesl\ into Java.  As
  well as increasing the portability of \nesl, this system has enabled
  us to make existing simulations and algorithm animations available in
  applet form on the web.  We present performance results showing that
  current Java virtual machines running the generated code achieve about
  half the performance of a native implementation of \nesl.  We conclude
  that the use of Java as an intermediate language is a viable way to
  improve the portability of existing high-level programming languages
  for scientific simulation and computation.
\end{abstract}

\input{introduction}

\input{nesl-description}

\input{implementation}

\input{applets}

\input{results}

\input{experiences}

\input{relatedwork}

\input{conclusions}

\bibliographystyle{plain}
\bibliography{javanesl}

All CMU papers can also be found at 
\texttt{http://www.cs.cmu.edu/\~{}scandal/papers.html}.

\appendix
\input{appendix}

\end{document}
