This looks great! Note that Lennart was a member of the original Haskell committee in the 80's and has written numerous compilers (including one still used at Standard Chartered). The combinator approach was originally used by David Turner's Miranda in the 80's and performed well on hardware of that era. Presumably embedded CPUs also favour the combinator approach.