Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Polymorphic Binding-Time Analysis
ESOP '94 Proceedings of the 5th European Symposium on Programming: Programming Languages and Systems
A Strongly-Typed Self-Applicable Partial Evaluator
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
Aspects of the PGG System: Specialization for Standard Scheme
Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School
Boolean Constraints for Binding-Time Analysis
PADO '01 Proceedings of the Second Symposium on Programs as Data Objects
Hand-Writing Program Generator Generators
PLILP '94 Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming
Binding Time Analysis for Polymorphically Typed Higher Order Languages
TAPSOFT '89 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 2: Advanced Seminar on Foundations of Innovative Software Development II and Colloquium on Current Issues in Programming Languages
Binding-Time Analysis for Polymorphic Types
PSI '02 Revised Papers from the 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics: Akademgorodok, Novosibirsk, Russia
SAS '95 Proceedings of the Second International Symposium on Static Analysis
Combinators for program generation
Journal of Functional Programming
Polymorphic specialization for ML
ACM Transactions on Programming Languages and Systems (TOPLAS)
Practical type inference for arbitrary-rank types
Journal of Functional Programming
Type checking with open type functions
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Finally tagless, partially evaluated: Tagless staged interpreters for simpler typed languages
Journal of Functional Programming
Typed tagless final interpreters
SSGIP'10 Proceedings of the 2010 international spring school conference on Generic and Indexed Programming
Hi-index | 0.00 |
Binding-time polymorphism enables a highly flexible binding-time analysis for offline partial evaluation. This work provides the tools to translate this flexibility into efficient program specialization in the context of a polymorphic language. Following the cogen-combinator approach, a set of combinators is defined in Haskell that enables the straightforward transcription of a binding-time polymorphic annotated program into the corresponding program generator. The typing of the combinators mimics the constraints of the binding-time analysis. The resulting program generator is safe, tag-free, and it has no interpretive overhead.