/IsiLanguageEmbriao-Compiladores

Embriao da IsiLanguage - curso de Compiladores

Primary LanguageJava

IsiLanguageEmbriao - Projeto de Compiladores

Integrantes

  • Diego Guerra / RA: 11201810534
  • Luiz Aparecido Joana / RA: 21084914

Vídeo

O vídeo está disponível neste link

Checklist

Items obrigatórios

  • Possuir 2 tipos de dados (pelo menos 1 String)
  • Possuir a instrução de decisão (if/else)
  • Pelo menos 1 estrutura de repetição
  • Verificar Atribuições com compatibilidade de tipos (semântica)
  • Possuir operações de Entrada e Saída
  • Aceitar números decimais
  • Verificar declaração de variávies (não usar variáveis que não foram declaradas)
  • Verificar se há variáveis declaradas e não-utilizadas (warning)
  • Geração de pelo menos 1 linguagem destino (C/Java/Python)

Anexo 1 - Elementos Adicionais(pelo menos 2 items)

  • Nova instrução para Switch/Case (escolha/caso)
  • Mais tipos de dados
  • Inclusão de novos operadores (exponenciação, raiz quadrada, logaritmos)
  • Geração de código para mais de uma linguagem diferente

Anexo 2 - Elementos Extraordinarios (pelo menos 2 items)

  • Criar um interpretador a partir da AST
  • Criar um editor com Highlights de palavras reservadas (editor Desktop)
  • Criar um editor Web para o código
  • Tornar o compilador um Webservice para receber programas e enviar respostas de possíveis erros

Exemplo de Entrada

Um exemplo simples de uma entrada pode ser visto no arquivo types.isi

programa
    int a, b;
    double c;
    texto s;

    a = 1;
    s = "hello world";
fimprog;

Exemplos de Erros/Warnigs

Variável Não Utilizada

Incompatibilidade de tipos

Variável Não Declarada