English
Related papers

Related papers: Control Flow Analysis for SF Combinator Calculus

200 papers

In a functional language, the dominant control-flow mechanism is function call and return. Most higher-order flow analyses, including k-CFA, do not handle call and return well: they remember only a bounded number of pending calls because…

Programming Languages · Computer Science 2015-07-01 Dimitrios Vardoulakis , Olin Shivers

Static analysis approximates the results of a program by examining only its syntax. For example, control-flow analysis (CFA) determines which syntactic lambdas (for functional languages) or (for object-oriented) methods may be invoked at…

Programming Languages · Computer Science 2021-07-28 Davis Ross Silverman , Yihao Sun , Kristopher Micinski , Thomas Gilray

Jay and Given-Wilson have recently introduced the Factorisation (or SF-) calculus as a minimal fundamental model of intensional computation. It is a combinatory calculus containing a special combinator, F, which is able to examine the…

Logic in Computer Science · Computer Science 2015-08-28 Reuben N. S. Rowe

Flow analysis is a ubiquitous and much-studied component of compiler technology---and its variations abound. Amongst the most well known is Shivers' 0CFA; however, the best known algorithm for 0CFA requires time cubic in the size of the…

Programming Languages · Computer Science 2013-11-25 David Van Horn , Harry G. Mairson

The Functional Machine Calculus (Heijltjes 2022) is a new approach to unifying the imperative and functional programming paradigms. It extends the lambda-calculus, preserving the key features of confluent reduction and typed termination, to…

Programming Languages · Computer Science 2026-03-03 Willem Heijltjes

Traditional control-flow analysis (CFA) for higher-order languages, whether implemented by constraint-solving or abstract interpretation, introduces spurious connections between callers and callees. Two distinct invocations of a function…

Programming Languages · Computer Science 2016-03-23 Thomas Gilray , Steven Lyde , Michael D. Adams , Matthew Might , David Van Horn

This dissertation proves lower bounds on the inherent difficulty of deciding flow analysis problems in higher-order programming languages. We give exact characterizations of the computational complexity of 0CFA, the $k$CFA hierarchy, and…

Programming Languages · Computer Science 2013-11-20 David Van Horn

Compilers use control flow graph (CFG) representations of low-level programs because they are suited to program analysis and optimizations. However, formalizing the behavior and metatheory of CFG programs is non-trivial: CFG programs don't…

Programming Languages · Computer Science 2018-05-16 Dmitri Garbuzov , William Mansky , Christine Rizkallah , Steve Zdancewic

Programs with control are usually modeled using lambda calculus extended with control operators. Instead of modifying lambda calculus, we consider a different model of computation. We introduce continuation calculus, or CC, a deterministic…

Logic in Computer Science · Computer Science 2013-09-06 Bram Geron , Herman Geuvers

Control-flow refinement refers to program transformations whose purpose is to make implicit control-flow explicit, and is used in the context of program analysis to increase precision. Several techniques have been suggested for different…

Programming Languages · Computer Science 2019-08-01 Jesús J. Doménech , John P. Gallagher , Samir Genaim

Many data-driven software engineering tasks such as discovering programming patterns, mining API specifications, etc., perform source code analysis over control flow graphs (CFGs) at scale. Analyzing millions of CFGs can be expensive and…

Software Engineering · Computer Science 2020-05-05 Ramanathan Ramu , Ganesha B Upadhyaya , Hoan Anh Nguyen , Hridesh Rajan

Context-free approaches to static analysis gain precision over classical approaches by perfectly matching returns to call sites---a property that eliminates spurious interprocedural paths. Vardoulakis and Shivers's recent formulation of…

Programming Languages · Computer Science 2010-07-27 Christopher Earl , Matthew Might , David Van Horn

The objective of this paper is to develop a functional programming language for quantum computers. We develop a lambda calculus for the classical control model, following the first author's work on quantum flow-charts. We define a…

Logic in Computer Science · Computer Science 2009-02-26 Peter Selinger , Benoit Valiron

Performance analysis is challenging as different components (e.g.,different libraries, and applications) of a complex system can interact with each other. However, few existing tools focus on understanding such interactions. To bridge this…

Performance · Computer Science 2024-10-24 Steven , Tang , Mingcan Xiang , Yang Wang , Bo Wu , Jianjun Chen , Tongping Liu

More often than not, there is a need to understand the structure of complex computer code: what functions and in what order they are called, how information travels around static, input, and output variables, what depends on what. As a…

Software Engineering · Computer Science 2016-10-10 Igor Polkovnikov

Confirmatory factor analysis (CFA) is a statistical method for identifying and confirming the presence of latent factors among observed variables through the analysis of their covariance structure. Compared to alternative factor models, CFA…

Methodology · Statistics 2024-10-08 Yifan Yang , Tianzhou Ma , Chuan Bi , Shuo Chen

We want to obtain derivatives in discontinuous program code, where default Algorithmic Differentiation may not perform well. Specifically, we consider discontinuities induced by control flow statements, where meaningful derivatives should…

Programming Languages · Computer Science 2023-05-12 Sebastian Christodoulou , Uwe Naumann

A long-standing practical challenge in the optimization of higher-order languages is inlining functions with free variables. Inlining code statically at a function call site is safe if the compiler can guarantee that the free variables have…

Programming Languages · Computer Science 2013-06-11 Lars Bergstrom , Matthew Fluet , John Reppy , Nora Sandler

Recently, we showed how to use control-flow refinement (CFR) to improve automatic complexity analysis of integer programs. While up to now CFR was limited to classical programs, in this paper we extend CFR to probabilistic programs and show…

Logic in Computer Science · Computer Science 2024-06-17 Nils Lommen , Éléanore Meyer , Jürgen Giesl

One of the big challenges in program obfuscation consists in modifying not only the program's straight-line code (SLC) but also the program's control flow graph (CFG). Indeed, if only SLC is modified, the program's CFG can be extracted and…

Cryptography and Security · Computer Science 2017-09-26 Rémi Géraud , Mirko Koscina , Paul Lenczner , David Naccache , David Saulpic
‹ Prev 1 2 3 10 Next ›