case expressions, if expressions) are well suited to describe conditional
assigment in the hardware.
-Useful features from the functional perspective, like polymorphism and higher
-order functions and expressions also prove suitable to describe hardware
-and our implementation shows that they can be translated to \VHDL as
-well.
+Useful features from the functional perspective, like polymorphism and
+higher-order functions and expressions also prove suitable to describe
+hardware and our implementation shows that they can be translated to
+\VHDL\ as well.
A prototype compiler was created in this research. For this prototype the
Haskell language was chosen as the input language, instead of creating a new
language from scratch. This has enabled creating the prototype rapidly,
allowing for experimenting with various functional language features and
interpretations in Cλash. Even supporting more complex features like
-polymorphism and higher order values has been possible. If a new language and
+polymorphism and higher-order values has been possible. If a new language and
compiler would have been designed from scratch, that new language would not
have been nearly as advanced as current Cλash.
University of Twente soon, hopefully this will provide a better insight
in how the system performs.
-The prototype compiler has a clear design. Its frontend is taken from the \GHC
+The prototype compiler has a clear design. Its frontend is taken from the \GHC\
compiler and desugares Haskell into a small, but functional and typed
language, called \emph{Core}. Cλash adds a transformation system that reduces
this small language to a normal form and a simple backend that performs a
that hear about using a functional language for hardware description
instantly hope to be able to provide a concise mathematical description
of their algorithm and have the hardware generated for them. Since this
-is obviously a different problem alltogether, we could not have hoped to
+is obviously a different problem altogether, we could not have hoped to
even start solving it. However, hopefully the current Cλash system
provides a solid base on top of which further experimentation with
functional descriptions can be built.