--- /dev/null
+\chapter{Future work}
+\section{Improved notation for hierarchical state}
+The hierarchic state model requires quite some boilerplate code for unpacking
+and distributing the input state and collecting and repacking the output
+state. There is really only one way in which this state handling can be done,
+so it would make sense to hide this boilerplate. This would incur no
+flexibility cost at all, since there are no other ways that would work.
+
+Options: Misuse the do notation in Haskell, create some abstraction in
+Haskell or add new syntax.
+
+\section{Improved notation or abstraction for pipelining}
+Since pipelining is a very common optimization for hardware systems, it should
+be easy to specify a pipelined system. Since it involves quite some registers
+into an otherwise regular combinatoric system, we might look for some way to
+abstract away some of the boilerplate for pipelining.
+
+Example of naive pipelined code
+
+Using monadic do does not fit the typing
+
+Using custom combinators would work