programming language definitions involve a meta language and a object language code example Example: metalanguages EBNF (Extended Backus-Naur Form) Railroad Diagrams