Demo Data from SIGIR 2026 / reviewers in the wild / expert
Georgios Sakkas
dblp:220/0298
· DBLP profile ↗
8ranked-venue papers
3as first author
4since 2021 · last 2025
—ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 3 first-author · 3 since 2021Artificial intelligence and machine learning · 1Human-computer interaction and ubiquitous computing · 1Applied, interdisciplinary, general and emerging computing · 1 · 1 since 2021
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
5 papers |
Program synthesis and code generation · 29% Debugging and program repair · 19% Programming languages and type systems · 13% | |
| Artificial intelligence
1 paper |
Language models and text generation · 100% |
Topics — the 15 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program synthesis and code generation
code generation with language models |
1.6 | 2 | 2025 | Neurosymbolic Modular Refinement Type Inference · ICSE 2025 LLM-Based Test-Driven Interactive Code Generation: User Study and Empirical Evaluation · IEEE Trans. Software Eng. 2024 |
Debugging and program repair
automated program repair |
1.4 | 3 | 2022 | Seq2Parse: neurosymbolic parse error repair · Proc. ACM Program. Lang. 2022 Type error feedback via analytic program repair · PLDI 2020 InFix: Automatically Repairing Novice Program Inputs · ASE 2019 |
Programming languages and type systems › type systems
refinement types |
0.9 | 1 | 2025 | Neurosymbolic Modular Refinement Type Inference · ICSE 2025 |
Program verification › type-based verification
refinement type inference |
0.9 | 1 | 2025 | Neurosymbolic Modular Refinement Type Inference · ICSE 2025 |
Program synthesis and code generation › interactive program synthesis
interactive code generation |
0.8 | 1 | 2024 | LLM-Based Test-Driven Interactive Code Generation: User Study and Empirical Evaluation · IEEE Trans. Software Eng. 2024 |
Software testing
test-driven development |
0.8 | 1 | 2024 | LLM-Based Test-Driven Interactive Code Generation: User Study and Empirical Evaluation · IEEE Trans. Software Eng. 2024 |
Compilers and program optimization › parsing
error-correct parsing |
0.6 | 1 | 2022 | Seq2Parse: neurosymbolic parse error repair · Proc. ACM Program. Lang. 2022 |
Program analysis
static analysis |
0.6 | 1 | 2022 | Seq2Parse: neurosymbolic parse error repair · Proc. ACM Program. Lang. 2022 |
Compilers and program optimization › parsing
syntax error recovery |
0.6 | 1 | 2022 | Seq2Parse: neurosymbolic parse error repair · Proc. ACM Program. Lang. 2022 |
Debugging and program repair › automated program repair
type error repair |
0.4 | 1 | 2020 | Type error feedback via analytic program repair · PLDI 2020 |
Programming languages and type systems
type systems |
0.4 | 1 | 2020 | Type error feedback via analytic program repair · PLDI 2020 |
Natural language and speech › Language models and text generation
large language model |
0.3 | 1 | 2025 | Neurosymbolic Modular Refinement Type Inference · ICSE 2025 |
Empirical software engineering
developer studies |
0.2 | 1 | 2024 | LLM-Based Test-Driven Interactive Code Generation: User Study and Empirical Evaluation · IEEE Trans. Software Eng. 2024 |
Empirical software engineering › developer studies
user study |
0.2 | 1 | 2024 | LLM-Based Test-Driven Interactive Code Generation: User Study and Empirical Evaluation · IEEE Trans. Software Eng. 2024 |
Computing education › programming education
programming education tools |
0.1 | 1 | 2019 | InFix: Automatically Repairing Novice Program Inputs · ASE 2019 |
Methods — techniques the papers use, named apart from their topics
large language model · 2.5neuro-symbolic reasoning · 1.7fine-tuning · 1.7unit test generation · 0.8error-message templates · 0.8symbolic error-correcting parsing · 0.6neural sequence classification · 0.6repair template learning · 0.4multiclass classification · 0.4data-driven synthesis · 0.4random mutation · 0.4
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Neurosymbolic Modular Refinement Type InferenceabstractRefinement types, a type-based generalization of Floyd-Hoare logics, are an expressive and modular means of statically ensuring a wide variety of correctness, safety, and security properties of software. However, their expressiveness and modularity means that to use them, a developer must laboriously annotate all the functions in their code with potentially complex type specifications that specify the contract for that function. We present LHC, a neurosymbolic agent that uses LLMs to automatically generate refinement type annotations for all the functions in an entire package or module, using the refinement type checker LiquidHaskell as an oracle to verify the correctness of the generated specifications. We curate a dataset of three Haskell packages where refinement types are used to enforce a variety of correctness properties from data structure invariants to low-level memory safety and use this dataset to evaluate LHC. Previously these packages required expert users several days to weeks to annotate with refinement types. Our evaluation shows that even when using relatively smaller models like the 3 billion parameter StarCoder LLM, by using fine-tuning and carefully chosen contexts, our neurosymbolic agent generates refinement types for up to 94% of the functions across entire libraries automatically in just a few hours, thereby showing that LLMs can drastically shrink the human effort needed to use formal verification. Georgios Sakkas, Pratyush Sahu, Kyeling Ong, Ranjit Jhala |
ICSE | 1 |
| 2024 | Utilisation of Unmanned Aerial Vehicles and Mesh in the Sky Wireless Communication System in Wildfire ManagementabstractThis paper provides an overview of the deployment of unmanned aerial vehicles (UAV), more commonly known as drones, in wildfire management, particularly in wildfire detection, prevention and quick and efficient response. UAVs are one of the user products of the SILVANUS project, a Horizon 2020 project which proposes the implementation of an environmentally sustainable, integrated technological and information platform for wildfire management. One of the integral parts of the SILVANUS platform is the Mesh in the Sky, which is a communication system that allows drones to collect and transfer up-to-date information on wildfire threats in areas with no cellular or long-range network coverage. On the basis of this technical example, the paper shows how new technologies can provide reliable input in order to detect, prevent or efficiently respond to cases of dangerous wildfire. Garegin Markarian, Georgios Sakkas, Nikolaos Kalapodis, Krishna Chandramouli, Lovorko Maric |
IGARSS | 2 |
| 2024 | LLM-Based Test-Driven Interactive Code Generation: User Study and Empirical EvaluationabstractLarge language models (LLMs) have shown great potential in automating significant aspects of coding by producing natural code from informal natural language (NL) intent. However, given NL is informal, it does not lend easily to checking that the generated code correctly satisfies the user intent. In this paper, we propose a novel interactive workflowTiCoderfor guided intent clarification (i.e., partial formalization) through tests to support the generation of more accurate code suggestions. Through a mixed methods user study with 15 programmers, we present an empirical evaluation of the effectiveness of the workflow to improve code generation accuracy. We find that participants using the proposed workflow are significantly more likely to correctly evaluate AI generated code, and report significantly less task-induced cognitive load. Furthermore, we test the potential of the workflow at scale with four different state-of-the-art LLMs on two python datasets, using an idealized proxy for a user feedback. We observe an average absolute improvement of 45.97% in the pass@1 code generation accuracy for both datasets and across all LLMs within 5 user interactions, in addition to the automatic generation of accompanying unit tests. Sarah Fakhoury, Aaditya Naik, Georgios Sakkas, Saikat Chakraborty 0001, Shuvendu K. Lahiri |
IEEE Trans. Software Eng. | 3 |
| 2022 | Seq2Parse: neurosymbolic parse error repairabstractWe present Seq2Parse, a language-agnostic neurosymbolic approach to automatically repairing parse errors. Seq2Parse is based on the insight that Symbolic Error Correcting (EC) Parsers can, in principle, synthesize repairs, but, in practice, are overwhelmed by the many error-correction rules that are not relevant to the particular program that requires repair. In contrast, Neural approaches are fooled by the large space of possible sequence level edits, but can precisely pinpoint the set of EC-rules that are relevant to a particular program. We show how to combine their complementary strengths by using neural methods to train a sequence classifier that predicts the small set of relevant EC-rules for an ill-parsed program, after which, the symbolic EC-parsing algorithm can make short work of generating useful repairs. We train and evaluate our method on a dataset of 1,100,000 Python programs, and show that Seq2Parse is accurate and efficient : it can parse 94% of our tests within 2.1 seconds, while generating the exact user fix in 1 out 3 of the cases; and useful : humans perceive both Seq2Parse-generated error locations and repairs to be almost as good as human-generated ones in a statistically-significant manner. Georgios Sakkas, Madeline Endres, Philip J. Guo, Westley Weimer, Ranjit Jhala |
Proc. ACM Program. Lang. | 1 |
| 2020 | Type error feedback via analytic program repairabstractWe introduce Analytic Program Repair, a data-driven strategy for providing feedback for type-errors via repairs for the erroneous program. Our strategy is based on insight that similar errors have similar repairs. Thus, we show how to use a training dataset of pairs of ill-typed programs and their fixed versions to: (1) learn a collection of candidate repair templates by abstracting and partitioning the edits made in the training set into a representative set of templates; (2) predict the appropriate template from a given error, by training multi-class classifiers on the repair templates used in the training set; (3) synthesize a concrete repair from the template by enumerating and ranking correct (e.g. well-typed) terms matching the predicted template. We have implemented our approach in Rite: a type error reporting tool for OCaml programs. We present an evaluation of the accuracy and efficiency of Rite on a corpus of 4,500 ill-typed Ocaml programs drawn from two instances of an introductory programming course, and a user-study of the quality of the generated error messages that shows the locations and final repair quality to be better than the state-of-the-art tool in a statistically-significant manner. Georgios Sakkas, Madeline Endres, Benjamin Cosman, Westley Weimer, Ranjit Jhala |
PLDI | 1 |
| 2020 | PABLO: Helping Novices Debug Python Code Through Data-Driven Fault LocalizationabstractAs dynamically-typed languages grow in popularity, especially among beginning programmers, there is an increased need to pinpoint their defects. Localization for novice bugs can be ambiguous: not all locations formally implicated are equally useful for beginners. We propose a scalable fault localization approach for dynamic languages that is helpful for debugging and generalizes to handle a wide variety of errors commonly faced by novice programmers. We base our approach on a combination of static, dynamic, and contextual features, guided by machine learning. We evaluate on over 980,000 diverse real user interactions across four years from the popular PythonTutor.com website, which is used both in classes and by non-traditional learners. We find that our approach is scalable, general, and quite accurate: up to 77% of these historical novice users would have been helped by our top-three responses, compared to 45% for the default interpreter. We also conducted a human study: participants preferred our approach to the baseline ($p = 0.018)$, and found it additionally useful for bugs meriting multiple edits. Benjamin Cosman, Madeline Endres, Georgios Sakkas, Leon Medvinsky, Yao-Yuan Yang, Ranjit Jhala, Kamalika Chaudhuri, Westley Weimer |
SIGCSE | 3 |
| 2019 | InFix: Automatically Repairing Novice Program InputsabstractThis paper presents InFix, a technique for automatically fixing erroneous program inputs for novice programmers. Unlike comparable existing approaches for automatic debugging and maintenance tasks, InFix repairs input data rather than source code, does not require test cases, and does not require special annotations. Instead, we take advantage of patterns commonly used by novice programmers to automatically create helpful, high quality input repairs. InFix iteratively applies error-message based templates and random mutations based on insights about the debugging behavior of novices. This paper presents an implementation of InFix for Python. We evaluate on 29,995 unique scenarios with input-related errors collected from four years of data from Python Tutor, a free online programming tutoring environment. Our results generalize and scale; compared to previous work, we consider an order of magnitude more unique programs. Overall, InFix is able to repair 94.5% of deterministic input errors. We also present the results of a human study with 97 participants. Surprisingly, this simple approach produces high quality repairs; humans judged the output of InFix to be equally helpful and within 4% of the quality of human-generated repairs. Madeline Endres, Georgios Sakkas, Benjamin Cosman, Ranjit Jhala, Westley Weimer |
ASE | 2 |
| 2018 | AIRMS: A risk management tool using machine learning
Spyros K. Chandrinos, Georgios Sakkas, Nikos D. Lagaros |
Expert Syst. Appl. | 2 |