Say something about not using simplified core.
[matthijs/master-project/report.git] / Chapters / Prototype.tex
index 7677cde8a990aac96276880179b00083002bf10d..96abdba007819ca679a8a752f7cb0e019e63dd3c 100644 (file)
     reason, \small{GHC} runs its simplifications and optimizations on the core
     representation as well \cite[jones96].
 
-    However, we will use the normal core representation, not the simplified
-    core. Reasons for this are detailed below. \todo{Ref}
+    We will use the normal Core representation, not the simplified Core. Even
+    though the simplified Core version is an equivalent, but simpler
+    definition, some problems were encountered with it in practice. The
+    simplifier restructures some (stateful) functions in a way the normalizer
+    and the \VHDL generation cannot handle, leading to uncompilable programs
+    (whereas the non-simplified version more closely resembles the original
+    program, allowing the original to be written in a way that can be
+    handled). This problem is further discussed in
+    \in{section}[sec:normalization:stateproblems].
     
     The final prototype roughly consists of three steps:
     
 %      Implementation issues: state splitting, linking input to output state,
 %      checking usage constraints on state variables.
 %
-%      \todo{Implementation issues: Separate compilation, simplified core.}
 %
 % vim: set sw=2 sts=2 expandtab: