Add presentation so far.
[matthijs/master-project/final-presentation.git] / howdoesitwork.lhs
diff --git a/howdoesitwork.lhs b/howdoesitwork.lhs
new file mode 100644 (file)
index 0000000..4c26ca5
--- /dev/null
@@ -0,0 +1,21 @@
+%include talk.fmt
+\section{How do you make Hardware from Haskell?}
+\frame
+{
+  \frametitle{So how do you make Hardware from Haskell?}\pause
+  \large{In three simple steps really:} \pause
+  \begin{itemize}
+    \item No Effort:\\
+    GHC API Parses, Typechecks and Desugars the Haskell code \pause
+    \item Hard: \\
+    Transform resulting Core, GHC's Intermediate Language,\linebreak to a normal form. Uses reduction rules. \pause
+    \item Easy: \\
+    Translate Normalized Core to synthesizable VHDL
+  \end{itemize}
+}\note[itemize]{
+\item Here is a quick insight as to how WE translate Haskell to Hardware
+\item Reduction rules are used to get a required normal form.
+\item Normal form already looks like hardware (components and lines)
+\item You can also use TH, like ForSyDe. Or traverse datastructures, like Lava?
+\item We're in luck with the GHC API update of 6.10 and onwards
+}