English
Related papers

Related papers: Investigating Compilation Errors of Students Learn…

200 papers

Background: Programming is a fundamental skill in computer science and software engineering specifically. Mastering it is a challenge for novices, which is evidenced by numerous errors that students make during programming assignments.…

Software Engineering · Computer Science 2025-02-21 Nadja Just , Janet Siegmund , Belinda Schantong

An introductory formal languages course exposes advanced undergraduate and early graduate students to automata theory, grammars, constructive proofs, computability, and decidability. Programming students find these topics to be challenging…

Formal Languages and Automata Theory · Computer Science 2014-12-17 Marco T. Morazán , Rosario Antunez

The functional programming paradigm has a long and storied history, with its beginnings in the Lambda Calculus. In recent decades, pure functional languages such as Haskell have been shown to be highly effective in producing robust software…

Computers and Society · Computer Science 2025-12-04 Rajshekhar Sunderraman

Code review is a widely-used practice in software development companies to identify defects. Hence, code review has been included in many software engineering curricula at universities worldwide. However, teaching code review is still a…

Software Engineering · Computer Science 2021-02-04 Chun Yong Chong , Patanamon Thongtanunam , Chakkrit Tantithamthavorn

Understanding student difficulties in programming is a complex challenge due to the wide range of topics and the abundant varieties of misconceptions and errors. This paper presents the design and development of a fine-grained taxonomy that…

Computers and Society · Computer Science 2026-05-27 Dimitri Eckert , Christian Kautz

Linear type systems have a long and storied history, but not a clear path forward to integrate with existing languages such as OCaml or Haskell. In this paper, we study a linear type system designed with two crucial properties in mind:…

Programming Languages · Computer Science 2017-11-09 Jean-Philippe Bernardy , Mathieu Boespflug , Ryan R. Newton , Simon Peyton Jones , Arnaud Spiwack

Haskell functions are defined as a series of clauses consisting of patterns that are matched against the arguments in the order of definition. In case an input is not matched by any of the clauses, an error occurs. Therefore it is desirable…

Programming Languages · Computer Science 2019-09-11 Pavel Kalvoda , Tom Sydney Kerckhove

Programming problems can be solved in a multitude of functionally correct ways, but the quality of these solutions (e.g. readability, maintainability) can vary immensely. When code quality is poor, symptoms emerge in the form of 'code…

Software Engineering · Computer Science 2024-03-11 Ivan Tan , Christopher M. Poskitt

Providing feedback on programming assignments manually is a tedious, error prone, and time-consuming task. In this paper, we motivate and address the problem of generating feedback on performance aspects in introductory programming…

Programming Languages · Computer Science 2014-09-18 Sumit Gulwani , Ivan Radiček , Florian Zuleger

Introductory programming courses often rely on small code-writing exercises that have clearly specified problem statements. This limits opportunities for students to practice how to clarify ambiguous requirements -- a critical skill in…

Human-Computer Interaction · Computer Science 2025-04-17 Paul Denny , Viraj Kumar , Stephen MacNeil , James Prather , Juho Leinonen

This paper presents Haskell#, a coordination language targeted at the efficient implementation of parallel scientific applications on loosely coupled parallel architectures, using the functional language Haskell. Examples of applications,…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-08-21 Francisco Heron de Carvalho Junior , Rafael Dueire Lins

As the usage of deep learning becomes increasingly popular in mobile and embedded solutions, it is necessary to convert the framework-specific network representations into executable code for these embedded platforms. This paper consists of…

Programming Languages · Computer Science 2021-04-13 Max Sponner , Bernd Waschneck , Akash Kumar

We describe a method for deepening a student's understanding of basic physics by asking the student to express physical ideas in a functional programming language. The method is implemented in a second-year course in computational physics…

Computers and Society · Computer Science 2014-12-17 Scott N. Walck

We comment on the over-use of lists in functional programming. With this respect, we review history of Haskell and some of its libraries, and hint at current developments.

Programming Languages · Computer Science 2018-08-28 Johannes Waldmann

We aim to compose algorithmic music in an interactive way with multiple participants. To this end we develop an interpreter for a sub-language of the non-strict functional programming language Haskell that allows to modify the program…

Programming Languages · Computer Science 2012-02-21 Henning Thielemann

Reading, understanding and explaining code have traditionally been important skills for novices learning programming. As large language models (LLMs) become prevalent, these foundational skills are more important than ever given the…

Human-Computer Interaction · Computer Science 2024-03-12 Paul Denny , David H. Smith , Max Fowler , James Prather , Brett A. Becker , Juho Leinonen

Background: Software modelling is a creative yet challenging task. Modellers often find themselves lost in the process, from understanding the modelling problem to solving it with proper modelling strategies and modelling tools. Students…

Software Engineering · Computer Science 2024-09-23 Shalini Chakraborty , Javier Troya , Lola Burgueño , Grischa Liebel

Students are able to produce correctly functioning program code even though they have a fragile understanding of how it actually works. Questions derived automatically from individual exercise submissions (QLC) can probe if and how well the…

Computers and Society · Computer Science 2023-06-29 Teemu Lehtinen , Otto Seppälä , Ari Korhonen

There are countless reasons cited in scientific studies to explain the difficulties in programming learning. The reasons range from the subject's complexity, the ineffective teaching and study methods, to psychological aspects such as…

Computers and Society · Computer Science 2020-06-26 Alberto Simões , Ricardo Queirós

As software becomes larger, programming languages become higher-level, and processors continue to fail to be clocked faster, we'll increasingly require compilers to reduce code bloat, eliminate abstraction penalties, and exploit interesting…

Programming Languages · Computer Science 2018-09-10 Nuno P. Lopes , John Regehr