Publicação
Large language models in automated repair of haskell type errors
| Resumo: | This paper introduces a new method of Automated Program Repair that relies on a combination of the GPT-4 Large Language Model and automatic type checking of Haskell programs. This method identifies the source of a type error and asks GPT-4 to fix that specific portion of the program. Then, QuickCheck is used to automatically generate a large set of test cases to validate whether the generated repair behaves as the correct solution. Our publicly available experiments revealed a success rate of 88.5% in normal conditions. However, more detailed testing should be performed to more accurately evaluate this form of APR. |
|---|---|
| Autores principais: | Santos, Sofia |
| Outros Autores: | Saraiva, João; Ribeiro, Francisco |
| Assunto: | Automated program repair Large language model Fault localization Code generation Type checking Automatic testing |
| Ano: | 2024 |
| País: | Portugal |
| Tipo de documento: | comunicação em conferência |
| Tipo de acesso: | acesso aberto |
| Instituição associada: | Universidade do Minho |
| Idioma: | inglês |
| Origem: | RepositóriUM - Universidade do Minho |
Registos relacionados
article GPT-3-powered type error debugging: investigating the use of large language models for code repair
por: Ribeiro, Francisco José Torres
Publicado em: (2023)
por: Ribeiro, Francisco José Torres
Publicado em: (2023)
article Framing program repair as code completion
por: Ribeiro, Francisco
Publicado em: (2022)
por: Ribeiro, Francisco
Publicado em: (2022)
school Explaining software faults in source code
por: Ribeiro, Francisco José Torres
Publicado em: (2024)
por: Ribeiro, Francisco José Torres
Publicado em: (2024)
article A development approach to industrial robots programming
por: Arnold, Gustavo V.
Publicado em: (2003)
por: Arnold, Gustavo V.
Publicado em: (2003)
article GPT-4.1 Sets the Standard in Automated Experiment Design Using Novel Python Libraries
por: Fachada, Nuno
Publicado em: (2025)
por: Fachada, Nuno
Publicado em: (2025)
article Large language models: compilers for the 4th generation of programming languages?
por: Marcondes, Francisco Supino
Publicado em: (2023)
por: Marcondes, Francisco Supino
Publicado em: (2023)
article Implementation of an orchestration language as a haskell domain specific language
por: Campos, Marco Devesas
Publicado em: (2009)
por: Campos, Marco Devesas
Publicado em: (2009)
article eOS: The exercise operating system
por: Mendes, Rui
Publicado em: (2018)
por: Mendes, Rui
Publicado em: (2018)
school Processos de verificação automáticos de acessibilidade em projetos de arquitetura
por: Madureira, Tiago Fernando Coutinho
Publicado em: (2024)
por: Madureira, Tiago Fernando Coutinho
Publicado em: (2024)
article Type your matrices for great good: a Haskell library of typed matrices and applications (functional pearl)
por: Santos, Armando
Publicado em: (2020)
por: Santos, Armando
Publicado em: (2020)
groups A repair operator for decomposable problems’ global solutions
por: Barbosa, Vítor
Publicado em: (2016)
por: Barbosa, Vítor
Publicado em: (2016)
article A repair operator for global solutions of decomposable problems
por: Barbosa, Vitor
Publicado em: (2016)
por: Barbosa, Vitor
Publicado em: (2016)
school ONTODL+: an ontology description language and its compiler
por: Dias, Alexandre Costa
Publicado em: (2021)
por: Dias, Alexandre Costa
Publicado em: (2021)
article Helping programmers improve the energy efficiency of source code
por: Pereira, Rui
Publicado em: (2017)
por: Pereira, Rui
Publicado em: (2017)
school Automatic repair of behavioural specifications
por: Cerqueira, Jorge Gabriel Alves
Publicado em: (2022)
por: Cerqueira, Jorge Gabriel Alves
Publicado em: (2022)
school Automated Refactoring in Software Automation Platforms
por: Fernandes, Inês Pina
Publicado em: (2022)
por: Fernandes, Inês Pina
Publicado em: (2022)
school From an Ontology for Programming to a Type-Safe Template Language
por: Parreira, Joana Baptista
Publicado em: (2022)
por: Parreira, Joana Baptista
Publicado em: (2022)
article Evaluation of a drug checking service at a large scale electronic music festival in Portugal
por: Valente, Helena
Publicado em: (2019)
por: Valente, Helena
Publicado em: (2019)
school Collaboration Between Developers and Designers
por: Pacheco, João Rafael Mira de Carvalho
Publicado em: (2021)
por: Pacheco, João Rafael Mira de Carvalho
Publicado em: (2021)
article A generalized approach to verification condition generation
por: Belo Lourenco, Claudio
Publicado em: (2018)
por: Belo Lourenco, Claudio
Publicado em: (2018)
article SPELLing out energy leaks: Aiding developers locate energy inefficient code
por: Pereira, Rui Alexandre Afonso
Publicado em: (2020)
por: Pereira, Rui Alexandre Afonso
Publicado em: (2020)
article Spectrophotometric approach for automatic human blood typing
por: Pimenta, Sara
Publicado em: (2012)
por: Pimenta, Sara
Publicado em: (2012)
article FPGA vendor-agnostic IP-XACT- and XSLT-based RTL design generator
por: Machado, Ricardo J.
Publicado em: (2016)
por: Machado, Ricardo J.
Publicado em: (2016)
school Database repairs with answer set programming
por: Alves, Ricardo Jorge de Aragão Vaz
Publicado em: (2011)
por: Alves, Ricardo Jorge de Aragão Vaz
Publicado em: (2011)
school Constraint-based verification of imperative programs
por: Beyene, Tewodros Awgichew
Publicado em: (2011)
por: Beyene, Tewodros Awgichew
Publicado em: (2011)
article Large-Scale Agile Frameworks – dealing with interdependences
por: Mucambe, Beatriz
Publicado em: (2019)
por: Mucambe, Beatriz
Publicado em: (2019)
article Documentation-driven GUI development for integration of image processing libraries
por: Lopes, Ana Patrícia Ribeiro
Publicado em: (2022)
por: Lopes, Ana Patrícia Ribeiro
Publicado em: (2022)
groups Behavioural Up/down Casting For Statically Typed Languages
por: Bacchiani, Lorenzo
Publicado em: (2024)
por: Bacchiani, Lorenzo
Publicado em: (2024)
article Off-line robot programming framework
por: Bottazzi, Vitor Santos
Publicado em: (2005)
por: Bottazzi, Vitor Santos
Publicado em: (2005)
article Sustainability of large language models: user perspective
por: Pipek, Pavel
Publicado em: (2025)
por: Pipek, Pavel
Publicado em: (2025)
school Are chatbots being optimized? : unveiling the efficiency-effectiveness dilemma in rule-based and large language models chatbots
por: Oliveira, António Pedro Viana
Publicado em: (2024)
por: Oliveira, António Pedro Viana
Publicado em: (2024)
article Large language models powered aspect-based sentiment analysis for enhanced customer insights
por: Água, Mariana
Publicado em: (2025)
por: Água, Mariana
Publicado em: (2025)
school A segurança no terrorismo e na indústria dos eventos
por: Bispo, Paulo Jorge dos Santos
Publicado em: (2015)
por: Bispo, Paulo Jorge dos Santos
Publicado em: (2015)
article Classification of daily abundant rainfall patterns and associated large-scale atmospheric circulation types in southern Portugal
por: Fragoso, Marcelo
Publicado em: (2008)
por: Fragoso, Marcelo
Publicado em: (2008)
article Iberian atmospheric dynamics and large forest fires in mainland Portugal
por: Leite, Flora Ferreira
Publicado em: (2017)
por: Leite, Flora Ferreira
Publicado em: (2017)
groups AI-Driven Output Checking for Official Statistics
por: Carvalho, Ricardo
Publicado em: (2026)
por: Carvalho, Ricardo
Publicado em: (2026)
school Automatização de um processo de faturação via Robot Process Automation
por: Gonçalves, Joana Maria Forsado Martins
Publicado em: (2022)
por: Gonçalves, Joana Maria Forsado Martins
Publicado em: (2022)
rate_review The impact of code smells on software bugs: a systematic literature review
por: Cairo, Aloisio S.
Publicado em: (2018)
por: Cairo, Aloisio S.
Publicado em: (2018)
article An activity oriented visual modelling language with automatic translation to different paradigms
por: Dias, Luís M. S.
Publicado em: (2005)
por: Dias, Luís M. S.
Publicado em: (2005)
school Definition of type approval requirements for automated driving vehicles
por: Sá, Helena Silva
Publicado em: (2023)
por: Sá, Helena Silva
Publicado em: (2023)
Registos relacionados
-
article GPT-3-powered type error debugging: investigating the use of large language models for code repair
por: Ribeiro, Francisco José Torres
Publicado em: (2023) -
article Framing program repair as code completion
por: Ribeiro, Francisco
Publicado em: (2022) -
school Explaining software faults in source code
por: Ribeiro, Francisco José Torres
Publicado em: (2024) -
article A development approach to industrial robots programming
por: Arnold, Gustavo V.
Publicado em: (2003) -
article GPT-4.1 Sets the Standard in Automated Experiment Design Using Novel Python Libraries
por: Fachada, Nuno
Publicado em: (2025)