English
Related papers

Related papers: Dynamic Witnesses for Static Type Errors (or, Ill-…

200 papers

We present a new method for automatically providing feedback for introductory programming problems. In order to use this method, we need a reference implementation of the assignment, and an error model consisting of potential corrections to…

Programming Languages · Computer Science 2012-11-19 Rishabh Singh , Sumit Gulwani , Armando Solar-Lezama

Automated random testing has shown to be an effective approach to finding faults but still faces a major unsolved issue: how to generate test inputs diverse enough to find many faults and find them quickly. Stateful testing, the automated…

Software Engineering · Computer Science 2013-08-14 Yi Wei , Hannes Roth , Carlo A. Furia , Yu Pei , Alexander Horton , Michael Steindorfer , Martin Nordio , Bertrand Meyer

Gradual typing combines static and dynamic typing in the same language, offering the benefits of both to programmers. Static typing provides error detection and strong guarantees while dynamic typing enables rapid prototyping and flexible…

Programming Languages · Computer Science 2016-10-27 Michael M. Vitousek , Jeremy G. Siek

Dependent types help programmers write highly reliable code. However, this reliability comes at a cost: it can be challenging to write new prototypes in (or migrate old code to) dependently-typed programming languages. Gradual typing makes…

Programming Languages · Computer Science 2019-08-23 Joseph Eremondi , Éric Tanter , Ronald Garcia

Beginning programmers struggle with the complex grammar of modern programming languages like Java, and make lot of syntax errors. The diagnostic syntax error messages from compilers and IDEs are sometimes useful, but often the messages are…

Software Engineering · Computer Science 2022-10-14 Toufique Ahmed , Noah Rose Ledesma , Premkumar Devanbu

Recent years have seen growing interest in the retrofitting of type systems onto dynamically-typed programming languages, in order to improve type safety, programmer productivity, or performance. In such cases, type system developers must…

Programming Languages · Computer Science 2016-05-05 Esben Andreasen , Colin S. Gordon , Satish Chandra , Manu Sridharan , Frank Tip , Koushik Sen

Instrumenting programs for performing run-time checking of properties, such as regular shapes, is a common and useful technique that helps programmers detect incorrect program behaviors. This is specially true in dynamic languages such as…

Programming Languages · Computer Science 2018-04-09 Maximiliano Klemen , Nataliia Stulova , Pedro Lopez-Garcia , José F. Morales , Manuel V. Hermenegildo

Teaching systems physical tasks is a long standing goal in HCI, yet most prior work has focused on non collaborative physical activities. Collaborative tasks introduce added complexity, requiring systems to infer users assumptions about…

Artificial Intelligence · Computer Science 2026-04-13 Edward Kim , Daniel He , Jorge Chao , Wiktor Rajca , Mohammed Amin , Nishant Malpani , Ruta Desai , Antti Oulasvirta , Bjoern Hartmann , Sanjit Seshia

When scripts in untyped languages grow into large programs, maintaining them becomes difficult. A lack of explicit type annotations in typical scripting languages forces programmers to must (re)discover critical pieces of design information…

Programming Languages · Computer Science 2011-06-15 Sam Tobin-Hochstadt , Matthias Felleisen

Erlang is a functional programming language with dynamic typing. The language offers great flexibility for destructing values through pattern matching and dynamic type tests. Erlang also comes with a type language supporting parametric…

Programming Languages · Computer Science 2025-08-04 Albert Schimpf , Stefan Wehr , Annette Bieniusa

TypeShift is a tool for visualizing linguistic patterns in the timing of typing production. Language production is a complex process which draws on linguistic, cognitive and motor skills. By visualizing holistic trends in the typing…

Computation and Language · Computer Science 2021-03-09 Adam Goodkind

Modern software systems become too complex to be tested and validated. Detecting software partial failures in complex systems at runtime assist to handle software unintended behaviors, avoiding catastrophic software failures and improving…

Software Engineering · Computer Science 2021-10-14 Shiyi Kong , Minyan Lu , Jun Ai , Shuguang Wang

Knowledge-based systems reason over some knowledge base. Hence, an important issue for such systems is how to acquire the knowledge needed for their inference. This paper assesses active learning methods for acquiring knowledge for "static…

Software Engineering · Computer Science 2020-10-23 Xueqi Yang , Zhe Yu , Junjie Wang , Tim Menzies

Data engineers increasingly use domain-specific languages (DSLs) to generate the code for data pipelines. Such DSLs are often embedded in Python. Unfortunately, there are challenges in debugging the generation of data pipelines: an error in…

Programming Languages · Computer Science 2025-08-21 Tianyu Chen , Darshal Shetty , Jeremy G. Siek , Chao-Hong Chen , Weixi Ma , Arnaud Venet , Rocky Liu

Gradually-typed programming languages permit the incremental addition of static types to untyped programs. To remain sound, languages insert run-time checks at the boundaries between typed and untyped code. Unfortunately, performance…

Programming Languages · Computer Science 2020-10-13 Cameron Moy , Phúc C. Nguyen , Sam Tobin-Hochstadt , David Van Horn

Session types have been proposed as a means of statically verifying implementations of communication protocols. Although prior work has been successful in verifying some classes of protocols, it does not cope well with parameterized,…

Programming Languages · Computer Science 2012-08-24 Minas Charalambides , Peter Dinges , Gul Agha

Program errors can occur in any type of programming, and can manifest in a variety of ways, such as unexpected output, crashes, or performance issues. And program error diagnosis can often be too abstract or technical for developers to…

Software Engineering · Computer Science 2025-01-07 Zhenyu Xu , Victor S. Sheng

This paper presents the first implementation of session types in a dynamically-typed language - Python. Communication safety of the whole system is guaranteed at runtime by monitors that check the execution traces comply with an associated…

Programming Languages · Computer Science 2013-12-11 Rumyana Neykova

Programming-by-example technologies are being deployed in industrial products for real-time synthesis of various kinds of data transformations. These technologies rely on the user to provide few representative examples of the transformation…

Programming Languages · Computer Science 2020-06-24 Ashish Tiwari , Arjun Radhakrishna , Sumit Gulwani , Daniel Perelman

A type description is a succinct noun compound which helps human and machines to quickly grasp the informative and distinctive information of an entity. Entities in most knowledge graphs (KGs) still lack such descriptions, thus calling for…

Computation and Language · Computer Science 2019-10-09 Jiangjie Chen , Ao Wang , Haiyun Jiang , Suo Feng , Chenguang Li , Yanghua Xiao
‹ Prev 1 3 4 5 6 7 10 Next ›