% -*- Mode: LaTeX -*-

\section{Conclusions and Future Work}
\label{sec:conclude}

In this paper we have presented two different termination semantics
for barriers in an eagerly evaluated, implicitly parallel, imperative
language. In each case, the semantics have been presented as a
translation from a language with barriers into a kernel language
without barriers where signals and triggers have been made explicit
using a weak head-normal form operator (\lbx{W}) and a strict
application operator (\tbx{Sap}).

The purely eager termination semantics were motivated by the dataflow
execution model and have been implemented in the Id/pH
compiler.\footnote{The current Id compiler implementation of barriers
has some bugs that were uncovered through this research.} This model
lacks certain desirable semantic properties such as the currying
equivalence; and this motivated us to devise an alternate, mixed
termination semantics that combines eager spawning of computation
along with lazy handling of identifier references.

At this point we do not have enough experience to judge whether an
environment-based implementation of the mixed evaluation approach
would be as efficient as the data-driven implementation of purely
eager evaluation. It may also be possible to combine both approaches
in a single implementation. We plan to work on these issues in the
future.
