Expressões 1

  • Inclui apenas constantes (valores) e operações sobre valores
  • Valores e operações sobre inteiros, booleanos e string são admitidos
  • Um programa é uma expressão

Fontes

Programa ::= Expressao

Expressao ::= Valor
       | ExpUnaria
       | ExpBinaria

Valor ::= ValorConcreto

ValorConcreto ::= ValorInteiro
       | ValorBooleano
       | ValorString

ExpUnaria ::= ExpMenos “-“ Expressao
       | ExpNot “not” Expressao
       | ExpLength “length” Expressao

ExpBinaria ::= ExpSoma Expressao “+” Expressao
       | ExpSub Expressao “-“ Expressao
       | ExpAnd Expressao “and” Expressao
       | ExpOr Expressao “or” Expressao
       | ExpEquals Expressao “==” Expressao
       | ExpConcat Expressao “++” Expressao

Classes Auxiliares

Tipo
TipoPrimitivo
Ambiente
Contexto

Exemplos de Programas

Exemplo

Parser

Expressoes1