• Ambiente didático para experimentação com a definição formal de linguagens orientadas a objetos 

      Matschulat, Samuel Grimm (2016) [Trabalho de conclusão de graduação]
      Neste trabalho é descrita a implementação de um software aplicativo gráfico, denominado Cool Inspector, cujo objetivo é oferecer um ambiente que permite a visualização detalhada, tendo a área de semântica formal como ...
    • Uma análise sobre reprovação no curso de Ciência da Computação na UFRGS sob a ótica dos alunos 

      Aprato Neto, Vilmar Dorneles (2021) [Trabalho de conclusão de graduação]
      A reprovação é considerada um dos principais motivos para a maioria dos alunos não concluírem um curso de graduação no tempo previsto, ou até mesmo por optarem pela troca de curso. O objetivo deste trabalho é traçar um ...
    • An introduction to category theory and a web-based visual editor for categorical concepts 

      Ramella, Giuseppe Moroni (2018) [Trabalho de conclusão de graduação]
      Category Theory is an area of mathematics with multiple applications in computing. However, because it is too abstract, students consider it very challenging, in particular when studying the discipline for the first time. ...
    • Faz : uma linguagem funcional didática 

      Araújo, Vítor Bujés Ubatuba de (2013) [Trabalho de conclusão de graduação]
      A linguagem de programação Racket e o ambiente DrRacket são utilizados em diversos cursos introdutórios de programação. O uso de uma linguagem funcional facilita a exposição de certos conceitos, tais como recursão estrutural, ...
    • Light programming language 

      Veiga, Pedro Sassen (2018) [Trabalho de conclusão de graduação]
      The increase of computing power in the last decades allowed for the creation and establishment of many high level programming languages such as Java and Python. In these languages, control over the hardware is often neglected ...
    • Paralelismo na linguagem Haskell 

      Pereira, Vagner Franco (2014) [Trabalho de conclusão de graduação]
      O desenvolvimento de algoritmos paralelos é uma tarefa complexa e requer grande esforço por parte dos desenvolvedores. Esse trabalho avalia se algumas das dificuldades presentes no desenvolvimento de algoritmos paralelos ...
    • Projeto e prototipação de uma variação do cálculo-lambda com tipos de sessão 

      Haggstrom, Gabriel de Souza (2021) [Trabalho de conclusão de graduação]
      Os tipos de sessão são uma extensão de linguagens de programação que permite verificar, em nível de sistema de tipos, se uma comunicação por troca de mensagens entre pro cessos concorrentes respeita um determinado protocolo. ...
    • Semantics and proof calculus for communicating unstructured code 

      Azzi, Guilherme Grochau (2015) [Trabalho de conclusão de graduação]
      Software becomes ever more ubiquitous and complex. Its use in safety-critical environments, where errors may harm people or cost great amounts of money, requires a high level of con dence in its correctness. In order to ...
    • SimpleLambda: uma linguagem funcional didática com tradução para o Cubo Lambda 

      Amaral, Artur Três do (2023) [Trabalho de conclusão de graduação]
      Cálculo Lambda é um modelo de computação proposto por Alonzo Church. É baseado na definição e aplicação de funções anônimas, sendo o comportamento dos termos definido por meio da substituição de parâmetros por argumentos. ...
    • Simulador para o cubo lambda estendido com tipos indutivos 

      Chandelier, Eduardo Bassani (2023) [Trabalho de conclusão de graduação]
      A compreensão de Cálculo Lambda e Teoria dos Tipos é importante para entender com mais profundidade os fundamentos tanto de linguagens funcionais modernas como de ferramentas assistentes de prova. Ao longo dos anos uma ...
    • The V language 

      Vedana, Arthur Giesel (2018) [Trabalho de conclusão de graduação]
      Functional programming languages are known for their ease of use and conciseness. Pure functional languages are a subset of these languages and provide further improvements in certain areas, such as making it easier to ...
    • VeriGraph : a tool for model checking graph grammars 

      Becker, Thiago Rafael (2014) [Trabalho de conclusão de graduação]
      In this work, we present the construction of a tool for model checking graph grammars, VeriGraph. The verification is done by first executing a specification written as a graph grammar, resulting in a state space, and then ...
    • Wittgenstein e o nascimento da ciência da computação 

      Flach, João Marcos (2019) [Trabalho de conclusão de graduação]
      No início do século XX, matemáticos, lógicos e filósofos se empenharam a fim de encontrar soluções para a crise dos fundamentos da matemática. A efervescência de ideias resultante dessa crise foi uma das grandes responsáveis ...