X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Freport.git;a=blobdiff_plain;f=Chapters%2FPrototype.tex;h=8f94251fed433806e00813cc2c07c0d6598a2d17;hp=e2e5db7f0581a1d01315e683396dab6c942a66ac;hb=d969667ecbfca2a9d65c5fa4846a0a2ca4185129;hpb=14ba857230ddd3bed3e9fbdde81ad2f693488493 diff --git a/Chapters/Prototype.tex b/Chapters/Prototype.tex index e2e5db7..8f94251 100644 --- a/Chapters/Prototype.tex +++ b/Chapters/Prototype.tex @@ -1326,7 +1326,7 @@ res \stopbuffer \placeexample[here][ex:AvgStateRemoved]{Normalized version of \in{example}[ex:AvgState] with ignored parts crossed out} - {\typebufferlam{AvgStatRemoved}} + {\typebufferlam{AvgStateRemoved}} When we actually leave out the crossed out parts, we get a slightly weird program: there is a variable \lam{s} which has no value, and there @@ -1430,6 +1430,22 @@ {\typebuffervhdl{AccStateVHDL}} \placeexample[][ex:AvgStateVHDL]{\VHDL\ generated for \hs{avg} from \in{example}[ex:AvgState]} {\typebuffervhdl{AvgStateVHDL}} + \section{Prototype implementation} + The prototype has been implemented using Haskell as its + implementation language, just like \GHC. This allows the prototype + do directly use parts of \GHC\ through the \small{API} it exposes + (which essentially taps directly into the internals of \GHC, making + this \small{API} not really a stable interface). + + Cλash can be run from a separate library, but has also been + integrated into \type{ghci} \cite[baaij09]. The latter does requires + a custom \GHC\ build, however. + + The latest version and all history of the Cλash code can be browsed + online or retrieved using the \type{git} program. + + http://git.stderr.nl/gitweb?p=matthijs/projects/cλash.git + % \subsection{Initial state} % How to specify the initial state? Cannot be done inside a hardware % function, since the initial state is its own state argument for the first