! you can squeeze it to one word, but usually it's cleaner this way : bool>string ( ? -- str ) { { t [ "True" ] } { f [ "False" ] } [ ] } case ; : boolean-string-substitute ( assoc -- assoc' ) [ bool>string ] assoc-map ;