Replacing string `eval` with block `eval`

This change is modelled on comments and recommendations from @shadowcat-mst
and this time should actually have executable code!  My apologies for the previous dodgy version.