X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Fhaskell-symposium-talk.git;a=blobdiff_plain;f=howdoesitwork.lhs;h=4c26ca534ffecfa49b9e7362b68d2f0c985316c6;hp=39137bd900c68f8af6d0bf8ab690a83d16c32aa0;hb=HEAD;hpb=994fb60ca2fb9a48380e54b4392f7519fcc63ec1 diff --git a/howdoesitwork.lhs b/howdoesitwork.lhs index 39137bd..4c26ca5 100644 --- a/howdoesitwork.lhs +++ b/howdoesitwork.lhs @@ -2,14 +2,20 @@ \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,\linebreak 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. Uses reduction rules. \pause \item Easy: \\ Translate Normalized Core to synthesizable VHDL \end{itemize} -} \ No newline at end of file +}\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 +}