Problem:
Return command can only return predefined constants
return 12
That means that you can not return result of other function (or just ony command)
// do not work return function namespace:path/id return scoreboard players get Player board
This feature will be very userful when creating datapacks.
Possible solution:
Allow return command to return result of any command. Like execute command handles and passes result of child command.
// possible syntax variants return result function namespace:path/id return run scoreboard players get Player board