"Natively running the Wolfram Language, the Wolfram Cloud in effect makes every aspect of cloud operations programmable—introducing an unprecedented level of integration, flexibility, simplicity and power into a new generation of cloud technology."
I can't agree with the last post that "Cloud" is Alpha, alpha is an "ai project" and not the wolfram language (wolfram would not advertise it is, they are quite aware).
I cannot say you will be able to send more than 1 "small expr" at a time. But I think you can and there is a working example why I think that below.
There are at least 3 help sections to know of: kernel Settings, Cloud, Links (wsm), Parallel computer.
The Cloud help section clearly show you wrap your functions in, ie, "CloudPut[expr]". I don't see that you did that above. Reading mm's help on "expr". I can't say for sure if Block and Function wrappers are expr, but they are considered so for other mm's functions.
Aside from that, see Help on ref/LinkCreate. If you have more than 1 computer the kernels can talk to one another (also there are "parallel computing tools" which can use open kernels)
LinkWrite[link, EnterTextPacket["Print[a]; Print[b];"]]
(link can be any computer you have a WSM connection with, your own or the cloud, Cloud is likely a kind of wrapper on using the above)
Also your kernel Settings has a way to open and use remote kernels (without using cloud or link, connected kernels can be used "automatically" by the kernel, and if you run "parallel" commands mm can try to determine what of any expr or program can be run on alternate kernels
Your PC likely allows multiple kernels to be running.
You would use Cloud if you are Cloud sharing or Cloud computing in a project with others.