Enunciados de questões e informações de concursos
No contexto de linguagens de programação, considere o trecho a seguir.
expression ::= atom | list
atom ::= number | symbol
number ::= [+-]?['0'-'9']+
symbol ::= ['A'-'Z''a'-'z'].*
list ::= '(' expression* ')'
Assinale o que é tipicamente definido dessa forma.