Theoretical Computer Science
A fresh look at combinator graph reduction
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
The semantics of lazy functional languages
Theoretical Computer Science
On laziness and optimality in lambda interpreters: tools for specification and analysis
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An algorithm for optimal lambda calculus reduction
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Optimal derivations in weak lambda-calculi and in orthogonal term rewriting systems
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Notions of computation and monads
Information and Computation
Research topics in functional programming
A natural semantics for lazy evaluation
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Optimal reduction in weak-&lgr;-calculus with shared environments
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
A call-by-need lambda calculus
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Time and space profiling for non-strict, higher-order functional languages
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Efficient compilation of lazy evaluation
SIGPLAN '84 Proceedings of the 1984 SIGPLAN symposium on Compiler construction
An Adequate Operational Semantics for Sharing in Lazy Evaluation
ESOP '92 Proceedings of the 4th European Symposium on Programming
MFCS '93 Proceedings of the 18th International Symposium on Mathematical Foundations of Computer Science
Proceedings of the 9th International Conference on Mathematical Foundations of Programming Semantics
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
Modeling Sharing and Recursion for Weak Reduction Strategies Using Explicit Substitution
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
The Calculi of Lambda Conversion. (AM-6) (Annals of Mathematics Studies)
The Calculi of Lambda Conversion. (AM-6) (Annals of Mathematics Studies)
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
A non-deterministic call-by-need lambda calculus
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Improvement in a lazy context: an operational theory for call-by-need
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Eager Haskell: resource-bounded execution yields efficient iteration
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
A calculus for probabilistic languages
Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation
Uniform confluence in concurrent computation
Journal of Functional Programming
Call-by-need in token-passing nets
Mathematical Structures in Computer Science
A concurrent lambda calculus with futures
Theoretical Computer Science - Applied semantics
Infinite Unfolding and Transformations of Nondeterministic Programs
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 2
A simple rewrite notion for call-time choice semantics
Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming
Plugging a Space Leak with an Arrow
Electronic Notes in Theoretical Computer Science (ENTCS)
Closing the stage: from staged code to typed closures
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Complete Laziness: a Natural Semantics
Electronic Notes in Theoretical Computer Science (ENTCS)
Minimality in a Linear Calculus with Iteration
Electronic Notes in Theoretical Computer Science (ENTCS)
Implementation and Application of Functional Languages
Lazy evaluation and delimited control
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
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
Congruence of Bisimulation in a Non-Deterministic Call-By-Need Lambda Calculus
Electronic Notes in Theoretical Computer Science (ENTCS)
Small-step and big-step semantics for call-by-need
Journal of Functional Programming
Similarity implies equivalence in a class of non-deterministic call-by-need lambda calculi
Information and Computation
On generic context lemmas for higher-order calculi with sharing
Theoretical Computer Science
Diagrams for meaning preservation
RTA'03 Proceedings of the 14th international conference on Rewriting techniques and applications
Correctness of copy in calculi with letrec
RTA'07 Proceedings of the 18th international conference on Term rewriting and applications
Rewriting and call-time choice: the HO case
FLOPS'08 Proceedings of the 9th international conference on Functional and logic programming
Three syntactic theories for combinatory graph reduction
LOPSTR'10 Proceedings of the 20th international conference on Logic-based program synthesis and transformation
Classical call-by-need and duality
TLCA'11 Proceedings of the 10th international conference on Typed lambda calculi and applications
Evaluating call-by-need on the control stack
TFP'10 Proceedings of the 11th international conference on Trends in functional programming
Purely functional lazy nondeterministic programming
Journal of Functional Programming - Dedicated to ICFP 2009
A concurrent lambda calculus with futures
FroCoS'05 Proceedings of the 5th international conference on Frontiers of Combining Systems
Defunctionalized interpreters for call-by-need evaluation
FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
Theoretical Computer Science
The call-by-need lambda calculus, revisited
ESOP'12 Proceedings of the 21st European conference on Programming Languages and Systems
Classical call-by-need sequent calculi: the unity of semantic artifacts
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
A Constructive Proof of Dependent Choice, Compatible with Classical Logic
LICS '12 Proceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science
Automatic amortised analysis of dynamic memory allocation for lazy functional programs
Proceedings of the 17th ACM SIGPLAN international conference on Functional programming
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 2
Infinite Unfolding and Transformations of Nondeterministic Programs
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Asynchronous functional reactive programming for GUIs
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
A synthetic operational account of call-by-need evaluation
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
Three syntactic theories for combinatory graph reduction
ACM Transactions on Computational Logic (TOCL)
Hi-index | 0.00 |
We present a calculus that captures the operational semantics of call-by-need. The call-by-need lambda calculus is confluent, has a notion of standard reduction, and entails the same observational equivalence relation as the call-by-name calculus. The system can be formulated with or without explicit let bindings, admits useful notions of marking and developments, and has a straightforward operational interpretation.