Frama-C API - C
 specification for building a RWS monad using the Make functor
 val empty_out : unit -> outhow to generate Writer values out of thin air (return, read)
how to combine two writer values resulting from two computations combined with a bind