whitespace in component names
use Unicode brackets to delineate words and IDs that contain whitespace, e.g. ”❲” and ”❳”
use parsing to recognize phrases, e.g. “I want a hamburger” and convert such phrases to code, e.g. kitchen.order("hamburger")
option: use strings (containing whitespace) instead of symbols, use Maps to translate from human-readable to parseable
separate operations from operands
parser or preprocessor can insert noise characters into intermediate code during compilation, then delete the noise as a last step
easier to specify grammars for phrases