English
Related papers

Related papers: Debugging Functional Programs by Interpretation

200 papers

Backtracking (i.e., reverse execution) helps the user of a debugger to naturally think backwards along the execution path of a program, and thinking backwards makes it easy to locate the origin of a bug. So far backtracking has been…

Programming Languages · Computer Science 2013-09-23 Jooyong Yi

Semantic understanding of programs has attracted great attention in the community. Inspired by recent successes of large language models (LLMs) in natural language understanding, tremendous progress has been made by treating programming…

Machine Learning · Computer Science 2023-06-13 Jianyu Zhao , Yuyang Rong , Yiwen Guo , Yifeng He , Hao Chen

We introduce a new application for inductive logic programming: learning the semantics of programming languages from example evaluations. In this short paper, we explored a simplified task in this domain using the Metagol meta-interpretive…

Programming Languages · Computer Science 2019-07-23 Sándor Bartha , James Cheney

Debugging software, i.e., the localization of faults and their repair, is a key activity in software engineering. Therefore, effective and efficient debugging is one of the core skills a software engineer must develop. However, the teaching…

We describe several views of the semantics of a simple programming language as formal documents in the calculus of inductive constructions that can be verified by the Coq proof system. Covered aspects are natural semantics, denotational…

Logic in Computer Science · Computer Science 2007-07-10 Yves Bertot

Debugging is a critical but challenging task for programmers. This paper proposes ChatDBG, an AI-powered debugging assistant. ChatDBG integrates large language models (LLMs) to significantly enhance the capabilities and user-friendliness of…

Software Engineering · Computer Science 2025-06-23 Kyla H. Levin , Nicolas van Kempen , Emery D. Berger , Stephen N. Freund

This paper analyses the security contribution of typical functional-language features by examining them in the light of accepted information security principles. Imperative and functional code are compared to illustrate various cases. In…

Cryptography and Security · Computer Science 2012-01-30 Yusuf Moosa Motara

Dynamic code, i.e., code that is created or modified at runtime, is ubiquitous in today's world. The behavior of dynamic code can depend on the logic of the dynamic code generator in subtle and non-obvious ways, with significant security…

Cryptography and Security · Computer Science 2019-10-31 Jesse Bartels , Jon Stephens , Saumya Debray

Information leaks through side channels are a pervasive problem, even in security-critical applications. Functional side channels arise when an attacker knows that a secret value of a server stays fixed for a certain time. Then, the…

Cryptography and Security · Computer Science 2020-02-11 Saeid Tizpaz-Niari , Pavol Cerny , Ashutosh Trivedi

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs

Multiverse analysis, a paradigm for statistical analysis that considers all combinations of reasonable analysis choices in parallel, promises to improve transparency and reproducibility. Although recent tools help analysts specify…

Human-Computer Interaction · Computer Science 2023-06-06 Ken Gu , Eunice Jun , Tim Althoff

Deep neural networks have been increasingly used in software engineering and program analysis tasks. They usually take a program and make some predictions about it, e.g., bug prediction. We call these models neural program analyzers. The…

Machine Learning · Computer Science 2021-03-22 Md Rafiqul Islam Rabin , Ke Wang , Mohammad Amin Alipour

Disassembly is a challenging task, particularly for obfuscated executables containing junk bytes, which is designed to induce disassembly errors. Existing solutions rely on heuristics or leverage machine learning techniques, but only…

Cryptography and Security · Computer Science 2024-07-15 Huanyao Rong , Yue Duan , Hang Zhang , XiaoFeng Wang , Hongbo Chen , Shengchen Duan , Shen Wang

Transparency, user trust, and human comprehension are popular ethical motivations for interpretable machine learning. In support of these goals, researchers evaluate model explanation performance using humans and real world applications.…

Artificial Intelligence · Computer Science 2019-10-31 Bernease Herman

Interpretation of deep learning remains a very challenging problem. Although the Class Activation Map (CAM) is widely used to interpret deep model predictions by highlighting object location, it fails to provide insight into the salient…

Computer Vision and Pattern Recognition · Computer Science 2024-05-30 Yuguang Yang , Runtang Guo , Sheng Wu , Yimi Wang , Juan Zhang , Xuan Gong , Baochang Zhang

Quantum computing has existed in the theoretical realm for several decades. Recently, quantum computing has re-emerged as a promising technology to solve problems that a classical computer could take hundreds of years to solve. However,…

Software Engineering · Computer Science 2024-10-14 Neilson Carlos Leite Ramalho , Higor Amario de Souza , Marcos Lordello Chaim

Variability models (e.g., feature models) are a common way for the representation of variabilities and commonalities of software artifacts. Such models can be translated to a logical representation and thus allow different operations for…

Software Engineering · Computer Science 2021-02-12 Viet-Man Le , Alexander Felfernig , Mathias Uta , David Benavides , José Galindo , Thi Ngoc Trang Tran

Debugging and monitoring programs are integral to engineering and deploying software. Dynamic analyses monitor applications through source code or IR injection, machine code or bytecode rewriting, and virtual machine or direct hardware…

Software Engineering · Computer Science 2025-04-30 Elizabeth Gilbert , Matthew Schneider , Zixi An , Suhas Thalanki , Wavid Bowman , Alexander Bai , Ben L. Titzer , Heather Miller

The functional interpretation is a systematic, syntactic method for transforming certain non-constructive proofs into constructive proofs with explicit bounds. We illustrate the interpretation by working through a concrete, fairly simple…

Logic · Mathematics 2015-03-20 Henry Towsner

Many logic programming languages have delay primitives which allow coroutining. This introduces a class of bug symptoms -- computations can flounder when they are intended to succeed or finitely fail. For concurrent logic programs this is…

Programming Languages · Computer Science 2007-11-06 Lee Naish
‹ Prev 1 4 5 6 7 8 10 Next ›