Да это всё из той же оперы что и вяленый, это надо привыкать жить без говна, а вот люди привыкли его жрать и не могут себе представить что можно по другому
Там есть return, но он возвращает только целочисленный exit status. Если хочешь что-то получить из процедуры, надо писать в stdout, а снаружи читать из stdin.