2 \title{Haskell as a higher order structural hardware description language}
3 \author{Matthijs Kooijman}
4 \date{December 14, 2009}
6 \frame{\titlepage \setcounter{framenumber}{1}}
11 \begin{block}{Applying the $sqrt$ function to 4}
18 \item Functional language - Math like
19 \item Central: Functions
22 \item Put arguments in (application)
27 \item \emph{How} does the function work? (definition)
30 \item Next sheet: sqrt example
35 \begin{block}{A mathematical square function}
40 \begin{block}{A square function in Haskell}
41 \texttt{square x = x * x}
47 \item Next sheet: f(x) = x*x example
48 \item Next sheet: square in Haskell
50 \item Next sheet: pyth in Haskell
51 \item Functions can be used by other functions
58 \begin{block}{Pythagoras' theorem}
63 $ c = \sqrt{a^2 + b^2} $
67 \includegraphics[width=3cm]{figures/Pythagoras}
71 % TODO: Alignment is weird due to mixing columns and non-columns
72 \begin{block}{Calculating $c$ in Haskell}
73 \texttt{pyth a b = sqrt ((square a) + (square b))}
77 % vim: set filetype=tex sw=2 sts=2 expandtab: