\documentclass{article}

\usepackage[T1]{fontenc}

\title{Dictionary Programming Language}

\author{José João Almeida\\{\footnotesize jj@di.uminho.pt} \and
	Alberto Simões\\{\footnotesize albie@alfarrabio.di.uminho.pt}}

\parskip .2cm

\begin{document}
\maketitle

\begin{abstract}
This document intends to be an implementation manual for the
Dictionary Programming Language and, at the same time, a user's manual
for it's programming. We will discuss the syntax, the structure under
the compiler and how to make it works for what you want.
\end{abstract}

\tableofcontents

\section{Introduction}

The idea behind the Dictionary Programming Language (DPL) is a way to
construct dictionaries with few people working on it. More precisely,
we would like to make a dictionary writing some generic entries and
making them more precise when there be time.

So, the user can say that \textit{cat}, \textit{dog} and
\textit{horse} are animals and, later, when it has some time, append
some text to the \textit{cat} definition, saying that it is a
\textit{feline}. This way of work make it easier to a couple of people
construct a dictionary.

\section{Grammar}

 Terms definitions are organized on \textit{feature structures}. In a
formal way, we can define them as:

$$ FS \equiv Term \rightharpoonup ( String + FS )$$

The \textit{Term} can be the term being defined or, if it is on a
nested \textit{feature structure}, a simple identifier. The
\textit{String} can be from the term definition to an example of how to
use the term.

We can define a such structure for the \textit{cat} term:

\begin{verbatim}
 {
  cat => {
	 }
 }
\end{verbatim}

\ldots

The language grammar is a bit fuzzy:

\begin{verbatim}
DPLcode :: ...
\end{verbatim}

\end{document}
