|
|
@@ -9,6 +9,10 @@ |
|
|
|
\usepackage{graphicx} |
|
|
|
\usepackage{listings} |
|
|
|
|
|
|
|
% for \verb inside \item |
|
|
|
\usepackage[T1]{fontenc} |
|
|
|
\usepackage[Q=yes]{examplep} |
|
|
|
|
|
|
|
% package configuration |
|
|
|
\DeclareGraphicsExtensions{.pdf,.png,.jpg} |
|
|
|
\beamertemplatenavigationsymbolsempty |
|
|
@@ -569,6 +573,30 @@ data AlgDataType = Constr1 Type11 Type12 |
|
|
|
\item ... |
|
|
|
\end{itemize} |
|
|
|
\end{frame} |
|
|
|
|
|
|
|
\begin{frame} |
|
|
|
\frametitle{Common misconceptions} |
|
|
|
Now that we know the basics, let's clear up some common misconceptions about haskell. |
|
|
|
\begin{itemize}[<+->] |
|
|
|
\item haskell is only a language for university professors |
|
|
|
\item haskell is not used in real world, see \url{https://wiki.haskell.org/Haskell_in_industry} |
|
|
|
\begin{itemize} |
|
|
|
\item Microsoft |
|
|
|
\item NVIDIA |
|
|
|
\item facebook |
|
|
|
\item Google |
|
|
|
\item Intel |
|
|
|
\item AT\Q{&}T |
|
|
|
\end{itemize} |
|
|
|
\item you cannot model states in haskell |
|
|
|
\item you cannot write larger programs in haskell |
|
|
|
\item you cannot write useful programs in haskell |
|
|
|
\item you cannot implement imperative algorithms |
|
|
|
\item you cannot do concurrency, cryptography, web development, ... in haskell |
|
|
|
\end{itemize} |
|
|
|
\onslide<+-> |
|
|
|
You can! |
|
|
|
\end{frame} |
|
|
|
\begin{frame} |
|
|
|
\frametitle{Toolchain} |
|
|
|
You need: |
|
|
|