Commit 05c4927c authored by Simon Marlow's avatar Simon Marlow
Browse files

a few 2010 updates

parent ce94e619
......@@ -316,7 +316,7 @@
\newcommand{\subsubsubsection}{\subsubsection*}
\newcommand{\subsubsubsubsection}{\subsubsubsection*}
% Haskell-prime
% Haskell-prime markup: this annotates the new/changed parts of the report.
\definecolor{prime}{named}{DarkOrchid}
\newcommand{\hprime}[1]{\color{prime}#1\normalcolor}
\newenvironment{haskellprime}{\color{prime}}{\normalcolor}
......@@ -352,15 +352,15 @@
\outline{
\vspace{.3in}
\begin{center}
{\LARGE\bf Haskell Prime} \\[.1in]
{\LARGE\bf Haskell 2010} \\[.1in]
{\LARGE\bf Language Report} \\[.3in]
\end{center}
\vspace{.3in}
}
\vspace{.15in}
\begin{center} \large
Isaac Jones and Malcolm Wallace\\
(editors)
Simon Marlow\\
(editor)
\end{center}
\vspace{.15in}
......@@ -398,7 +398,7 @@ that it does not claim to be a definition of the language Haskell 98.
\startnewstuff
\pagenumbering{arabic}
\part{The Haskell Prime Language}
\part{The Haskell 2010 Language}
\input{intro}\startnewsection
\input{lexemes}\startnewsection
......@@ -417,7 +417,7 @@ that it does not claim to be a definition of the language Haskell 98.
% ------------------------- Part II: libraries report -----------------------------------
\part{The Haskell Prime Libraries}
\part{The Haskell 2010 Libraries}
\label{libraries}
\input{ratio}\startnewsection
......
......@@ -39,7 +39,7 @@ style=article
~top=<a href="index.html">top</a>
~style=<body bgcolor="#ffffff">
~id=<i>The Haskell Prime Report</i><br>
~id=<i>The Haskell 2010 Report</i><br>
~back=<a href="~prev.html">back</a>
~nxt=<a href="~next.html">next</a>
~funct=<a href="prelude-index.html">function index</a>
......@@ -51,4 +51,4 @@ style=article
~header=~style ~id ~top | ~back | ~nxt | ~contents | ~funct <br><hr>
~sheader=~style ~id ~top | back | ~nxt | ~contents | ~funct <br><hr>
~eheader=~style ~id ~top | ~back | next | ~contents | ~funct <br><hr>
~indexHeader=<title>Haskell Prime Contents</title>~style ~id~top | ~funct <br><h3>Haskell Prime Report: Contents</h3>
~indexHeader=<title>Haskell 2010 Contents</title>~style ~id~top | ~funct <br><h3>Haskell 2010 Report: Contents</h3>
%
% $Header: /home/cvs/root/haskell-report/report/intro.verb,v 1.7 2002/12/10 11:51:11 simonpj Exp $
%
%**<title>The Haskell Prime Report: Introduction</title>
%**<title>The Haskell 2010 Report: Introduction</title>
%*section 1
%**~header
\section{Introduction}
......
......@@ -63,7 +63,7 @@ satisfied these constraints:
programming languages.
\end{enumerate}
\section*{\Haskell{} Prime: language and libraries}
\section*{\Haskell{} 2010: language and libraries}
The committee intended that \Haskell{} would serve as a basis for
future research in language design, and hoped that extensions or
......@@ -85,18 +85,18 @@ implementations), that it was worthwhile to define another iteration of
the language standard, essentially to codify (and legitimise) the status
quo.
\Haskell{} Prime was thus conceived as a relatively conservative
\Haskell{} 2010 was thus conceived as a relatively conservative
extension of \Haskell{} 98, taking on board new features only where
they were well understood and widely agreed upon.
It too is intended to be a ``stable'' language, yet reflecting the
considerable progress in research on language design in recent years.
\end{haskellprime}
% {\em Implementors are committed to supporting \Haskell{} Prime
% {\em Implementors are committed to supporting \Haskell{} 2010
% exactly as specified, for the foreseeable future}.
%It provides a stable point of reference, so that those who
%wish to write text books, or use \Haskell{} for teaching, can do so in
%the knowledge that \Haskell{} Prime will continue to exist.
%the knowledge that \Haskell{} 2010 will continue to exist.
The original \Haskell{} Report covered only the language, together with a
standard library called the @Prelude@. By the time \Haskell{} 98 was
......@@ -108,7 +108,7 @@ A separate effort was therefore begun by a distinct (but overlapping)
committee to fix the \Haskell{} 98 Libraries.
\begin{haskellprime}
For \Haskell{} Prime, we have seen fit once again to separate the
For \Haskell{} 2010, we have seen fit once again to separate the
Libraries standardisation process from the Language. Libraries evolve
much more rapidly than the language, and are governed by a looser
community-led process.
......@@ -146,34 +146,22 @@ community-led process.
\section*{Extensions to \Haskell{} 98}
\begin{haskellprime}
The major language additions in \Haskell{} Prime, over and above \Haskell{} 98
are listed here:
\begin{description}
\item[Syntactic sugar,] including:
\begin{itemize}
\item pattern guards;
%\item recursive do-notation;
\item lexically scoped type variables;
%\item meta-programming facilities;
\end{itemize}
The most significant language changes in \Haskell{} 2010 relative to
\Haskell{} 98 are listed here.
\item[Type system innovations,] including:
New language features:
\begin{itemize}
\item multi-parameter type classes;
\item functional dependencies;
\item existential types;
\item local universal polymorphism and arbitrary rank-types;
\item A foreign function interface (FFI)
\item Hierarchical module names, e.g. @Data.Bool@
\item Pattern guards
\end{itemize}
\item[Control extensions,] including:
Removed language features:
\begin{itemize}
\item monadic state;
\item exceptions;
\item concurrency;
\item The $(n+k)$ pattern syntax
\end{itemize}
\end{description}
\end{haskellprime}
\end{haskellprime}
\section*{\Haskell{} Resources}
\label{sect:resources}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment