X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=howdoesitwork.lhs;h=342be54965bdf856471244679abf96414982db54;hb=73b5dbc07a705b9eec15976a62bded98f6a159f5;hp=39137bd900c68f8af6d0bf8ab690a83d16c32aa0;hpb=bf7c294bcfb5b4528e4daf0bdddd18ab59adc86c;p=matthijs%2Fmaster-project%2Fhaskell-symposium-talk.git diff --git a/howdoesitwork.lhs b/howdoesitwork.lhs index 39137bd..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: \\ + 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