|
|
@@ -672,6 +672,28 @@ For haskell IDEs, see \url{https://wiki.haskell.org/IDEs} |
|
|
|
\end{itemize} |
|
|
|
\end{frame} |
|
|
|
|
|
|
|
\begin{frame}[fragile] |
|
|
|
\frametitle{You should be able to answer these questions} |
|
|
|
\begin{itemize} |
|
|
|
\item What are side effects? |
|
|
|
\item What is referential transparency? |
|
|
|
\item Can you have referential transparency with side effects? |
|
|
|
\item What does the output of a haskell function depend on? |
|
|
|
\item What is laziness? |
|
|
|
\item When are types checked in haskell? |
|
|
|
\end{itemize} |
|
|
|
\vspace{\baselineskip} |
|
|
|
Does this compile? If not, fix it. Is this a total function? |
|
|
|
\setHaskellCodeStyle |
|
|
|
\begin{lstlisting} |
|
|
|
data FakeInt = MkDouble Double |
|
|
|
| MkInt Int |
|
|
|
|
|
|
|
f :: Int -> FakeInt |
|
|
|
f 0 = 0.5 |
|
|
|
\end{lstlisting} |
|
|
|
\end{frame} |
|
|
|
|
|
|
|
\begin{frame} |
|
|
|
\frametitle{Sources} |
|
|
|
\begin{itemize} |
|
|
|