English
Related papers

Related papers: Teaching Program Decomposition in CS1: A Conceptua…

200 papers

Software and information technologies are becoming increasingly integrated and pervasive in human society and range from automated decision making and social media and entertainment, to running critical social and physical infrastructures…

Computers and Society · Computer Science 2023-12-08 Renato Cortinovis , Devender Goyal , Luiz Fernando Capretz

Curriculum Learning for Reinforcement Learning is an increasingly popular technique that involves training an agent on a sequence of intermediate tasks, called a Curriculum, to increase the agent's performance and learning speed. This paper…

Machine Learning · Computer Science 2021-11-02 Andrea Bassich , Francesco Foglino , Matteo Leonetti , Daniel Kudenko

Computational methods and associated software implementations are central to every field of scientific investigation. Modern biological research, particularly within systems biology, has relied heavily on the development of software tools…

Computers and Society · Computer Science 2025-03-07 Kit Gallagher , Richard Creswell , Ben Lambert , Martin Robinson , Chon Lok Lei , Gary R. Mirams , David J. Gavaghan

While teaching introductory programming courses for over a decade in reputed institutions we have experienced that several factors play significant role in developing problem solving skills and program development skills in students. There…

Computers and Society · Computer Science 2015-06-30 Biswajit Saha , Utpal Kumar Ray

Computational thinking has been a recent focus of education research within the sciences. However, there is a dearth of scholarly literature on how best to teach and to assess this topic, especially in disciplinary science courses. Physics…

Physics Education · Physics 2021-05-18 Daniel P. Weller , Theodore E. Bott , Marcos D. Caballero , Paul W. Irving

Introductory programming courses often emphasize mastering syntax and basic constructs before progressing to more complex and interesting programs. This bottom-up approach can be frustrating for novices, shifting the focus away from problem…

Computers and Society · Computer Science 2024-10-07 Chris Kerslake , Paul Denny , David H Smith , James Prather , Juho Leinonen , Andrew Luxton-Reilly , Stephen MacNeil

Cyber Physical Systems are systems controlled or monitored by computer-based programs, tightly integrated networks, sensors, and actuators. Software development of CPS has become so difficult that it represents most of the cost of CPS…

Software Engineering · Computer Science 2019-11-26 Etienne Borde

Functional decomposition is the process of breaking down a function $f$ into a composition $f=g(f_1,\dots,f_k)$ of simpler functions $f_1,\dots,f_k$ belonging to some class $\mathcal{F}$. This fundamental notion can be used to model…

Computational Complexity · Computer Science 2026-01-14 Mateus de Oliveira Oliveira , Wim Van den Broeck

Computer programming is undergoing a true transformation driven by powerful new tools for automatic source code generation based on large language models. This transformation is also manifesting in introductory programming courses at…

Computers and Society · Computer Science 2025-07-02 Clemente Rubio-Manzano , Jazna Meza , Rodolfo Fernandez-Santibanez , Christian Vidal-Castro

Programming requires much more than just writing code in a programming language. It is usually done in the context of a stateful environment, by interacting with a system through a graphical user interface. Yet, this wide space of…

Programming Languages · Computer Science 2023-02-21 Joel Jakubovic , Jonathan Edwards , Tomas Petricek

Software Categorization is the task of organizing software into groups that broadly describe the behavior of the software, such as "editors" or "science." Categorization plays an important role in several maintenance tasks, such as…

Software Engineering · Computer Science 2018-06-18 Alexander LeClair , Zachary Eberhart , Collin McMillan

Despite significant progress in the development of neural-symbolic frameworks, the question of how to integrate a neural and a symbolic system in a \emph{compositional} manner remains open. Our work seeks to fill this gap by treating these…

Artificial Intelligence · Computer Science 2020-10-23 Efthymia Tsamoura , Loizos Michael

Scaling model capacity has been vital in the success of deep learning. For a typical network, necessary compute resources and training time grow dramatically with model size. Conditional computation is a promising way to increase the number…

Machine Learning · Computer Science 2018-11-14 Louis Kirsch , Julius Kunze , David Barber

To ensure programs do not leak private data, we often want to be able to provide formal guarantees ensuring such data is handled correctly. Often, we cannot keep such data secret entirely; instead programmers specify how private data may be…

Programming Languages · Computer Science 2026-04-21 Jan Menz , Andrew K. Hirsch , Peixuan Li , Deepak Garg

There is a growing consensus that physics majors need to learn computational skills, but many departments are still devoid of computation in their physics curriculum. Some departments may lack the resources or commitment to create a…

Physics Education · Physics 2009-11-13 Todd Timberlake , Javier E. Hasbun

Computer science (CS) education needs to evolve to support software and artificial intelligence (AI) systems engineering, and it needs to happen now -- precisely because the core intellectual contributions of CS have never been more…

Software Engineering · Computer Science 2026-05-01 Chandra N. Sekharan , George K. Thiruvathukal

Writing complex computer programs to study scientific problems requires careful planning and an in-depth knowledge of programming languages and tools. In this chapter the importance of using the right tool for the right problem is…

Computational Physics · Physics 2010-06-17 Helmut G. Katzgraber

Pretraining language models directly on web-scale corpora is the de facto paradigm. We study an alternative where the model is initially exposed to abstract structured data to ease the subsequent acquisition of rich semantic knowledge, much…

Computation and Language · Computer Science 2026-05-29 Liangze Jiang , Zachary Shinnick , Anton van den Hengel , Hemanth Saratchandran , Damien Teney

Code refactoring is a fundamental software engineering practice aimed at improving code quality and maintainability. Despite its importance, developers often neglect refactoring due to the significant time, effort, and resources it…

Even with impressive advances in automated formal methods, certain problems in system verification and synthesis remain challenging. Examples include the verification of quantitative properties of software involving constraints on timing…

Logic in Computer Science · Computer Science 2015-03-19 Sanjit A. Seshia