Composition of handler types in algebraic effects and handlers
You are correct that the reason lies in the lack of computation abstractions. They are left out because they are not a standard programming construct, especially in a call-by-value calculus. But even if you added them, I don't think they should be given a type of the form $\underline X \Rightarrow \underline Y$ because they are in general not homomorphisms, what the type would suggest.

You can get around in two ways:


you can apply the function fun t -&gt; with h' handle (with h handle t ()) of type $(\mathtt{unit} \to \underline A) \to \underline C$ on a thunked operation. For example, in Multicore OCaml the only way of making a general handler is through a function that takes a thunked computation.
you can precompose the handler similar to what @chi suggested.
If h is of the form

handler {
    return x -&gt; c_ret,
    op1(x, k) -&gt; c1(x, k),
    ...
}


then the composed handler

handler {
    return x -&gt; with h' handle c_ret,
    op1(x, k) -&gt; with h' handle c1(x, k),
    ...
}


has the type $\underline A \Rightarrow \underline C$.