Nondeterminism in algebraic specifications and algebraic programs
Nondeterminism in algebraic specifications and algebraic programs
A call-by-need lambda calculus
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Admissible graph rewriting and narrowing
JICSLP'98 Proceedings of the 1998 joint international conference and symposium on Logic programming
Typed Higher-Order Narrowing without Higher-Order Strategies
FLOPS '99 Proceedings of the 4th Fuji International Symposium on Functional and Logic Programming
A Complete Narrowing Calculus for Higher-Order Functional Logic Programming
PLILPS '95 Proceedings of the 7th International Symposium on Programming Languages: Implementations, Logics and Programs
On the Completeness of Narrowing as the Operational Semantics of Functional Logic Programming
CSL '92 Selected Papers from the Workshop on Computer Science Logic
Higher-order narrowing with definitional trees
Journal of Functional Programming
The call-by-need lambda calculus
Journal of Functional Programming
Lazy Context Cloning for Non-Deterministic Graph Rewriting
Electronic Notes in Theoretical Computer Science (ENTCS)
A simple rewrite notion for call-time choice semantics
Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming
Operational semantics for declarative multi-paradigm languages
Journal of Symbolic Computation
Multi-paradigm declarative languages
ICLP'07 Proceedings of the 23rd international conference on Logic programming
On the correctness of bubbling
RTA'06 Proceedings of the 17th international conference on Term Rewriting and Applications
A flexible framework for programming with non-deterministicfunctions
Proceedings of the 2009 ACM SIGPLAN workshop on Partial evaluation and program manipulation
Narrowing for First Order Functional Logic Programs with Call-Time Choice Semantics
Applications of Declarative Programming and Knowledge Management
Purely functional lazy non-deterministic programming
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Programming with singular and plural non-deterministic functions
Proceedings of the 2010 ACM SIGPLAN workshop on Partial evaluation and program manipulation
A program transformation for returning states in functional-logic programs
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
Liberal typing for functional logic programs
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
Well-typed narrowing with extra variables in functional-logic programming
PEPM '12 Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
Purely functional lazy nondeterministic programming
Journal of Functional Programming - Dedicated to ICFP 2009
New results on type systems for functional logic programming
WFLP'09 Proceedings of the 18th international conference on Functional and Constraint Logic Programming
Transparent function types: clearing up opacity
Proceedings of the 14th symposium on Principles and practice of declarative programming
Typing as functional-logic evaluation
PEPM '13 Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation
Hi-index | 0.00 |
It is known that the behavior of non-deterministic functions with call-time choice semantics, present in current functional logic languages, is not well described by usual approaches to reduction like ordinary term rewriting systems or λ-calculus. The presence of HO features makes things more difficult, since reasoning principles that are essential in a standard (i.e., deterministic) functional setting, like extensionality, become wrong. In this paper we propose HOlet-rewriting, a notion of rewriting with local bindings that turns out to be adequate for programs with HO non-deterministic functions, as it is shown by strong equivalence results with respect to HOCRWL, a previously existing semantic framework for such programs. In addition,we give a sound and complete notion of HO-let-narrowing, we show by a case study the usefulness of the achieved combination of semantic and reduction notions, and finally we prove within our framework that a standard approach to the implementation of HO features, namely translation to FO, is still valid for HO nondeterministic functions.