Flow analysis of lazy higher-order functional programs
Neil D. Jones,Nils Andersen +1 more
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
David Van Horn,Matthew Might +1 more
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
C.-H. Luke Ong,Steven J. Ramsay +1 more
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
William Robertson,Giovanni Vigna +1 more
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
Patrick Cousot,Radhia Cousot +1 more
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
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.