scispace - formally typeset
Open AccessJournal ArticleDOI

Flow analysis of lazy higher-order functional programs

Neil D. Jones, +1 more
- 20 Apr 2007 - 
- Vol. 375, Iss: 1, pp 120-136
Reads0
Chats0
TLDR
A technique for data flow analysis of programs in this class of functional languages is described by safely approximating the behavior of a certain class of term rewriting systems and obtaining ''safe'' descriptions of program inputs, outputs and intermediate results by regular sets of trees.
About
This article is published in Theoretical Computer Science.The article was published on 2007-04-20 and is currently open access. It has received 57 citations till now. The article focuses on the topics: Lazy evaluation & Lazy initialization.

read more

Citations
More filters
Journal Article

An experiment in partial evaluation - the generation of a compiler generator

TL;DR: A running, non-trivial partial evaluator is described, which is the first which has been used in practice to transform interpreters into corresponding stand-alone compilers, or to generate a compile r generator by transforming itself.
Proceedings ArticleDOI

Abstracting abstract machines

TL;DR: It is demonstrated that the derivational approach to abstract interpretation that yields novel and transparently sound static analyses when applied to well-established abstract machines scales up uniformly to allow static analysis of realistic language features, including tail calls, conditionals, side effects, exceptions, first-class continuations, and even garbage collection.
Journal ArticleDOI

Verifying higher-order functional programs with pattern-matching algebraic data types

TL;DR: This paper introduces pattern-matching recursion schemes (PMRS) as an accurate model of computation for functional programs that manipulate algebraic data-types and shows that the (trivial automaton) model-checking problem for weak PMRS is decidable.
Proceedings Article

xBook: redesigning privacy control in social networking platforms

TL;DR: This work presents a novel framework for building privacy-preserving social networking applications that retains the functionality offered by the current social networks and uses information flow models to control what untrusted applications can do with the information they receive.
Proceedings Article

Static enforcement of web application integrity through strong typing

TL;DR: This work presents a web application framework that leverages existing work on strong type systems to statically enforce a separation between the structure and content of both web documents and database queries generated by a web applications, and shows how this approach can automatically prevent the introduction of both server-side cross-site scripting and SQL injection vulnerabilities.
References
More filters
Proceedings ArticleDOI

Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints

TL;DR: In this paper, the abstract interpretation of programs is used to describe computations in another universe of abstract objects, so that the results of abstract execution give some information on the actual computations.
Proceedings ArticleDOI

Definitional interpreters for higher-order programming languages

TL;DR: The definition of a simple applicative programming language by means of an interpreter written in a similar language is considered, and the treatment of imperative features such as jumps and assignment is discussed.
Book

Tree automata

Ferenc Gecseg
TL;DR: A context-free grammar over the terminal alphabet generating the Dyck language of well-bracketed strings and a product construction for nondeterministic bu-ta A 1 and A 2, to discuss whether there are simpler means of specifying them formally.