Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- ArticleAugust 2003
Efficient fixpoint computation in linear tabling
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 275–283https://doi.org/10.1145/888251.888277Early resolution mechanisms proposed for tabling such as OLDT rely on suspension and resumption of subgoals to compute fixpoints. Recently, a new resolution framework called linear tabling has emerged as an alternative tabling method. The idea of linear ...
- ArticleAugust 2003
A demand-driven narrowing calculus with overlapping definitional trees
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 253–263https://doi.org/10.1145/888251.888275We propose a demand-driven conditional narrowing calculus in which a variant of definitional trees [2] is used to efficiently control the narrowing strategy. This calculus is sound and strongly complete w.r.t. Constructor-based ReWriting Logic (CRWL) ...
- ArticleAugust 2003
Generativity and dynamic opacity for abstract types
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 241–252https://doi.org/10.1145/888251.888274The standard formalism for explaining abstract types is existential quantification. While it provides a sufficient model for type abstraction in entirely statically typed languages, it proves to be too weak for languages enriched with forms of dynamic ...
- ArticleAugust 2003
Practical aspects of declarative debugging in Haskell 98
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 230–240https://doi.org/10.1145/888251.888273Non-strict purely functional languages pose many challenges to the designers of debugging tools. Declarative debugging has long been considered a suitable candidate for the task due to its abstraction over the evaluation order of the program, although ...
- ArticleAugust 2003
Integrating finite domain constraints and CLP with sets
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 219–229https://doi.org/10.1145/888251.888272In this paper we propose a semantically well-founded combination of the constraint solvers used in the constraint programming languages CLP(SET) and CLP(FD). This work demonstrates that it is possible to provide efficient executions (through CLP(FD) ...
- ArticleAugust 2003
Explicit substitutions in the reduction of lambda terms
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 195–206https://doi.org/10.1145/888251.888270Substitution in the lambda calculus is a complex operation that traditional presentations of beta contraction naively treat as a unitary operation. Actual implementations are more careful. Within them, substitutions are realized incrementally through ...
- ArticleAugust 2003
From datalog rules to efficient programs with time and space guarantees
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 172–183https://doi.org/10.1145/888251.888268This paper describes a method for transforming any given set of Datalog rules into an efficient specialized implementation with guaranteed worst-case time and space complexities, and for computing the complexities from the rules. The running time is ...
- ArticleAugust 2003
Compilation of extended recursion in call-by-value functional languages
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 160–171https://doi.org/10.1145/888251.888267This paper formalizes and proves correct a compilation scheme for mutually-recursive definitions in call-by-value functional languages. This scheme supports a wider range of recursive definitions than standard call-by-value recursive definitions. We ...
- ArticleAugust 2003
On the rewriting and efficient computation of bound disjunctive datalog queries
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 136–147https://doi.org/10.1145/888251.888265In this paper we present a technique for the optimization of bound queries over disjunctive deductive databases with constraints. The proposed approach consists of two distinct phases: i) the rewriting of queries for propagating bindings from the query ...
- ArticleAugust 2003
Simplification and termination of strategies in rule-based languages
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 124–135https://doi.org/10.1145/888251.888264In rule-based languages, control of rule application can be expressed thanks to strategy constructors. The paper addresses termination of such strategy-guided evaluation. To fix ideas, we use the ELAN strategy language. We first give a sufficient ...
- ArticleAugust 2003
Refining weakly outermost-needed rewriting and narrowing
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 113–123https://doi.org/10.1145/888251.888263Outermost-needed rewriting/narrowing is a sound and complete optimal demand-driven strategy for the class of inductively sequential constructor systems. Its parallel extension (known as weakly) deals with non-inductively sequential constructor systems. ...
- ArticleAugust 2003
Formally deriving an STG machine
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 102–112https://doi.org/10.1145/888251.888262Starting from P. Sestoft semantics for lazy evaluation, we define a new semantics in which normal forms consist of variables pointing to lambdas or constructions. This is in accordance with the more recent changes in the Spineless Tagless G-machine (STG)...
- ArticleAugust 2003
Extending arbitrary solvers with constraint handling rules
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 79–90https://doi.org/10.1145/888251.888260Constraint Handling Rules (CHRs) are a high-level committed choice programming language commonly used to write constraint solvers. While the semantic basis of CHRs allows them to extend arbitrary underlying constraint solvers, in practice, all current ...
- ArticleAugust 2003
Rank 2 intersection types for modules
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 67–78https://doi.org/10.1145/888251.888259We propose a rank 2 intersection type system for a language of modules built on a core ML-like language. The principal typing property of the rank 2 intersection type system for the core language plays a crucial role in the design of the type system for ...
- ArticleAugust 2003
ViMer: a visual debugger for mercury
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 56–66https://doi.org/10.1145/888251.888258ViMer is a visual debugging environment for Mercury programs which has three main contributions. First, it employs a new execution tree representation, the layered AND-OR tree, which we believe provides a better way of visualizing backtracking in AND-OR-...
- ArticleAugust 2003
On translating geometric solids to functional expressions
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 44–55https://doi.org/10.1145/888251.888257Language for Structured Design (LSD)is a high level, visual, logic programming language for design of structured objects. LSD combines the design and programming activities in a homogeneous programming/design environment by extending Lograph, a visual ...
- ArticleAugust 2003
Conditional narrowing without conditions
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 20–31https://doi.org/10.1145/888251.888255We present a new evaluation strategy for functional logic programs described by weakly orthogonal conditional term rewriting systems. Our notion of weakly orthogonal conditional rewrite system extends a notion of Bergstra and Klop and covers a large ...
- ArticleAugust 2003
A functional correspondence between evaluators and abstract machines
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 8–19https://doi.org/10.1145/888251.888254We bridge the gap between functional evaluators and abstract machines for the λ-calculus, using closure conversion, transformation into continuation-passing style, and defunctionalization.We illustrate this approach by deriving Krivine's abstract ...
- ArticleAugust 2003
Automatic verification of cryptographic protocols: a logic programming approach
PPDP '03: Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programmingPages 1–3https://doi.org/10.1145/888251.888252We present a technique for cryptographic protocol verification, based on an intermediate representation of the protocol by a set of Horn clauses (a logic program). This technique makes it possible to verify security properties of the protocols, such as ...