Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
Lambda lifting: transforming programs to recursive equations
Proc. of a conference on Functional programming languages and computer architecture
A novel representation of lists and its application to the function "reverse"
Information Processing Letters
Three implementation models for scheme
Three implementation models for scheme
A denotational semantics for Prolog
ACM Transactions on Programming Languages and Systems (TOPLAS)
Continuation-passing, closure-passing style
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Deforestation: transforming programs to eliminate trees
Proceedings of the Second European Symposium on Programming
Control-flow analysis of higher-order languages of taming lambda
Control-flow analysis of higher-order languages of taming lambda
Implementing functional languages
Implementing functional languages
Back to direct style II: first-class continuations
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
HILOG: a foundation for higher-order logic programming
Journal of Logic Programming
ESOP'92 Selected papers of the symposium on Fourth European symposium on programming
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Lightweight closure conversion
ACM Transactions on Programming Languages and Systems (TOPLAS)
Simple translation of goal-directed evaluation
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
Type-driven defunctionalization
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Continuation-Based Program Transformation Strategies
Journal of the ACM (JACM)
Linear logic programming with an ordered context
Proceedings of the 2nd ACM SIGPLAN international conference on Principles and practice of declarative programming
Type-preserving garbage collectors
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Essentials of programming languages (2nd ed.)
Essentials of programming languages (2nd ed.)
From Syntactic Theories to Interpreters: Automating the Proof of Unique Decomposition
Higher-Order and Symbolic Computation
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
Definitional Interpreters Revisited
Higher-Order and Symbolic Computation
Definitional Interpreters for Higher-Order Programming Languages
Higher-Order and Symbolic Computation
Fundamental Concepts in Programming Languages
Higher-Order and Symbolic Computation
Super-combinators a new implementation method for applicative languages
LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming
The Occurrence of Continuation Parameters in CPS Terms
The Occurrence of Continuation Parameters in CPS Terms
Rabbit: A Compiler for Scheme
The calculi of lambda-nu-cs conversion: a syntactic theory of control and state in imperative higher-order programming languages
Recursive application-survival in the lambda calculus
Recursive application-survival in the lambda calculus
Locus Solum: From the rules of logic to the logic of rules
Mathematical Structures in Computer Science
Journal of Functional Programming
From ML to Ada: Strongly-typed language interoperability via source translation
Journal of Functional Programming
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 unifying approach to goal-directed evaluation
SAIG'01 Proceedings of the 2nd international conference on Semantics, applications, and implementation of program generation
Compiling Embedded Programs to Byte Code
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
A First-Order One-Pass CPS Transformation
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
Forwarding in Attribute Grammars for Modular Language Design
CC '02 Proceedings of the 11th International Conference on Compiler Construction
A functional correspondence between evaluators and abstract machines
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
Polymorphic typed defunctionalization
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A first-order one-pass CPS transformation
Theoretical Computer Science
Producing all ideals of a forest, functionally
Journal of Functional Programming
On the dynamic extent of delimited continuations
Information Processing Letters
Polymorphic typed defunctionalization and concretization
Higher-Order and Symbolic Computation
On the static and dynamic extents of delimited continuations
Science of Computer Programming
Proceedings of the 2006 workshop on ML
Theoretical Computer Science - Applied semantics: Selected topics
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
A syntactic correspondence between context-sensitive calculi and abstract machines
Theoretical Computer Science
On Barron and Strachey's cartesian product function
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
A concrete framework for environment machines
ACM Transactions on Computational Logic (TOCL)
A static simulation of dynamic delimited control
Higher-Order and Symbolic Computation
Defunctionalized interpreters for programming languages
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Inter-deriving Semantic Artifacts for Object-Oriented Programming
WoLLIC '08 Proceedings of the 15th international workshop on Logic, Language, Information and Computation
Adapting functional programs to higher order logic
Higher-Order and Symbolic Computation
A Transformational Approach to Polyvariant BTA of Higher-Order Functional Programs
Logic-Based Program Synthesis and Transformation
Science of Computer Programming
DSL '09 Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages
Losing functions without gaining data: another look at defunctionalisation
Proceedings of the 2nd ACM SIGPLAN symposium on Haskell
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
On the dynamic extent of delimited continuations
Information Processing Letters
Higher-Order and Symbolic Computation
Delimited continuations in operating systems
CONTEXT'07 Proceedings of the 6th international and interdisciplinary conference on Modeling and using context
Inter-deriving semantic artifacts for object-oriented programming
Journal of Computer and System Sciences
From reduction-based to reduction-free normalization
AFP'08 Proceedings of the 6th international conference on Advanced functional programming
A systematic derivation of the STG machine verified in Coq
Proceedings of the third ACM Haskell symposium on Haskell
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
Infinitary Combinatory Reduction Systems
Information and Computation
From type checking by recursive descent to type checking with an abstract machine
Proceedings of the Eleventh Workshop on Language Descriptions, Tools and Applications
Three syntactic theories for combinatory graph reduction
LOPSTR'10 Proceedings of the 20th international conference on Logic-based program synthesis and transformation
A correspondence between type checking via reduction and type checking via evaluation
Information Processing Letters
Contracts as pairs of projections
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
A rational deconstruction of landin's SECD machine
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
A rational deconstruction of landin's j operator
IFL'05 Proceedings of the 17th international conference on Implementation and Application of Functional Languages
Automatic testing of higher order functions
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Defunctionalized interpreters for call-by-need evaluation
FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
Testing polymorphic properties
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Control-flow analysis of functional programs
ACM Computing Surveys (CSUR)
Theoretical Computer Science
LICS '12 Proceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Three syntactic theories for combinatory graph reduction
ACM Transactions on Computational Logic (TOCL)
Hi-index | 0.00 |
Reynolds's defunctionalization technique is a whole-program transformation from higher-order to first-order functional programs. We study practical applications of this transformation and uncover new connections between seemingly unrelated higher-order and first-order specifications and between their correctness proofs. Defunctionalization therefore appearsboth as a springboard for rev ealing new connections and as a bridge for transferring existing results between the first-order world and the higher-order world.