X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=howdoesitwork.lhs;h=342be54965bdf856471244679abf96414982db54;hb=db31ec50d26e4d299f57fe1b15eb60d57ae7d9dd;hp=f073c8aa6db2a9cafbd41fceaf2c8ed9c84ee4fe;hpb=9f6a6587a2e51364cebce060cfc6ef9534b0bd2e;p=matthijs%2Fmaster-project%2Fhaskell-symposium-talk.git diff --git a/howdoesitwork.lhs b/howdoesitwork.lhs index f073c8a..342be54 100644 --- a/howdoesitwork.lhs +++ b/howdoesitwork.lhs @@ -2,14 +2,19 @@ \section{How do you make Hardware from Haskell?} \frame { - \frametitle{So how do you make Hardware from Haskell?} - \large{In three simple steps} \pause + \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 Haskell \pause - \item Hard.. sort of: \\ - Transform resulting Core, GHC's Intermediate Language, to a normal form \pause + GHC API Parses, Typechecks and Desugars the Haskell code \pause + \item Hard: \\ + Transform resulting Core, GHC's Intermediate Language,\linebreak to a normal form \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 You can also use TH, like ForSyDe. Or traverse datastructures, like +\item We're in luck with the GHC API update of 6.10 and onwards +\item Normal form is a single lamda and a let expression, every let binder is a simple assignment } \ No newline at end of file