exercise: Wordy version: 1 plan: 18 imports: '&answer' tests: | for @($c-data) { if . === False { throws-like {..&answer}, Exception, .; } else { is ..&answer, |.; } } unit: module example: | sub answer ($q is copy) is export { given $q { s:s:g/^What is|\?$//; s:g/plus/+/; s:g/minus/−/; loop { last unless s:s/(.*) multiplied by/($0)×/ or s:s/(.*) divided by/($0)÷/; } } use MONKEY-SEE-NO-EVAL; EVAL $q or fail; } stub: | sub answer ($question) is export { }