Module Text_block.With_static_lengths
Provide versions of halign and valign with the invariant about list length encoded into the types.
You can write, for example:
let [x; y] = Text_block.With_static_lengths.valign [x; y] in
...
module List : sig ... end