... mergeTypes t1 (t2:ts) = (t2 :) <$> mergeTypes t1 ts ... fs <- mapM (\(fld, ty) -> silly ty <&> (Str (fld ++" : ") :)) $ M.assocs row ...