I don't know if this is still up-to-date, as in this thread John McCall and others mentioned that __shared is slightly different than originally described in the manifesto, but the idea behind read is summed up there nicely:
Since read is not officially proposed yet, it's still prefixed with an underscore.
So instead of return you must yield, but I don't know if it's available in the beta or maybe as _yield, which is also not officially proposed yet.