English
Related papers

Related papers: Prodirect Manipulation: Bidirectional Programming …

200 papers

The rise of (multimodal) large language models (LLMs) has shed light on software agent -- where software can understand and follow user instructions in natural language. However, existing approaches such as API-based and GUI-based agents…

Software Engineering · Computer Science 2025-02-10 Mengwei Xu

The research field of end-user programming has largely been concerned with helping non-experts learn to code sufficiently well in order to achieve their tasks. Generative AI stands to obviate this entirely by allowing users to generate code…

Human-Computer Interaction · Computer Science 2023-11-02 Advait Sarkar

Program synthesis from incomplete specifications (e.g. input-output examples) has gained popularity and found real-world applications, primarily due to its ease-of-use. Since this technology is often used in an interactive setting,…

Programming Languages · Computer Science 2017-03-13 Vu Le , Daniel Perelman , Oleksandr Polozov , Mohammad Raza , Abhishek Udupa , Sumit Gulwani

We, as a society, need artists to help us interpret and explain science, but what does an artist's studio look like when today's science is built upon the language of large, increasingly complex data? This paper presents a data…

Human-Computer Interaction · Computer Science 2020-10-20 Bridger Herman , Francesca Samsel , Annie Bares , Seth Johnson , Greg Abram , Daniel F. Keefe

Reversibility is a key issue in the interface between computation and physics, and of growing importance as miniaturization progresses towards its physical limits. Most foundational work on reversible computing to date has focussed on…

Logic in Computer Science · Computer Science 2011-12-01 Samson Abramsky

Current day software development relies heavily on the use of service architectures and on agile iterative development methods to design, implement, and deploy systems. These practices result in systems made up of multiple services that…

Software Engineering · Computer Science 2020-07-20 Blagovesta Kostova , Seda Gürses , Carmela Troncoso

Professional software offers immense power but also presents significant learning challenges. Its complex interfaces, as well as insufficient built-in structured guidance and unfamiliar terminology, often make newcomers struggle with task…

Human-Computer Interaction · Computer Science 2025-05-20 Yimeng Liu , Misha Sra

Scientific computing is increasingly incorporating the advancements in machine learning and the ability to work with large amounts of data. At the same time, machine learning models are becoming increasingly sophisticated and exhibit many…

Programming Languages · Computer Science 2019-07-19 Mike Innes , Alan Edelman , Keno Fischer , Chris Rackauckas , Elliot Saba , Viral B Shah , Will Tebbutt

Software measurement programs have emerged as compounds of several measurement activities that are pursued as part of a combined effort of several parties within a software organization, based on interests that the organization has…

Software Engineering · Computer Science 2013-07-18 Alejandro Sanchez Guinea

The inner views of all our applications are predetermined by the designers; only some non-significant variations are allowed with the help of adaptive interface. In several programs you can find some moveable objects, but it is an extremely…

Human-Computer Interaction · Computer Science 2009-04-07 Sergey Andreyev

While current chat-based AI assistants primarily operate reactively, responding only when prompted by users, there is significant potential for these systems to proactively assist in tasks without explicit invocation, enabling a…

Human-Computer Interaction · Computer Science 2025-03-03 Valerie Chen , Alan Zhu , Sebastian Zhao , Hussein Mozannar , David Sontag , Ameet Talwalkar

We present probabilistic neural programs, a framework for program induction that permits flexible specification of both a computational model and inference algorithm while simultaneously enabling the use of deep neural networks.…

Neural and Evolutionary Computing · Computer Science 2016-12-05 Kenton W. Murray , Jayant Krishnamurthy

Assistive machines endow people with limited mobility the opportunity to live more independently. However, operating these machines poses risks to the safety of the human operator as well as the surrounding environment. Thus, proper user…

Human-Computer Interaction · Computer Science 2022-05-19 Mahdieh Nejati Javaremi , Sisilia Sinaga , Yuming Jin , Matthew L. Elwin , Brenna Argall

Providing examples is one of the most common way for end-users to interact with program synthesizers. However, program synthesis systems assume that examples consistent with the program are chosen at random, and do not exploit the fact that…

Artificial Intelligence · Computer Science 2022-04-07 Saujas Vaduguru , Kevin Ellis , Yewen Pu

Program synthesis aims to {\it automatically} find programs from an underlying programming language that satisfy a given specification. While this has the potential to revolutionize computing, how to search over the vast space of programs…

Neural and Evolutionary Computing · Computer Science 2022-03-01 Yuan Yuan , Wolfgang Banzhaf

The aim of a probabilistic output analysis is to derive a probability distribution of possible output values for a program from a probability distribution of its input. We present a method for performing static output analysis, based on…

Programming Languages · Computer Science 2015-09-30 Mads Rosendahl , Maja H. Kirkeby

Interfaces are recognized as an important mechanism to define contracts governing interactions between semi-independent software modules. Well-designed interfaces significantly reduce software complexity and ease maintainability by…

Software Engineering · Computer Science 2013-10-01 Hani Abdeen , Osama Shata , Abdelkarim Erradi

In today's software world with its cornucopia of reusable software libraries, when a programmer is faced with a programming task that they suspect can be completed through the use of a library, they often look for code examples using a…

Software Engineering · Computer Science 2021-10-08 Geert Heyman , Rafael Huysegems , Pascal Justen , Tom Van Cutsem

Programming languages are engineered languages that allow to instruct a machine and share algorithmic information; they have a great influence on the society since they underlie almost every information technology artefact, and they are at…

Programming Languages · Computer Science 2015-10-16 Silvia Crafa

Modern cyber-physical systems are operated by complex software that increasingly takes over safety-critical functions. Software enables rapid iterations and continuous delivery of new functionality that meets the ever-changing expectations…

Software Engineering · Computer Science 2025-10-08 Carmen Cârlan , Daniel Ratiu , Michael Wagner