Partially static operations

Peter Thiemann
2013 Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation - PEPM '13  
Partial evaluation distinguishes between different binding times when manipulating values in a program. A partial evaluator performs evaluation steps on values with a static binding time whereas it generates code for values with a dynamic binding time. Binding time descriptions have evolved from monolithic to fine grained, partially static data structures where different components may have different binding times. We consider the next step in this evolution where not just data constructors but
more » ... also operations can give rise to partially static structures, which are processed by the partial evaluator. We introduce this notion in an online setting, generalize it, generate a binding-time analysis for it, and implement an offline program generator supporting partially static operations with it. We report on our initial experiences with this new approach.
doi:10.1145/2426890.2426906 dblp:conf/pepm/Thiemann13 fatcat:xxehwptd6jbkzcjilsvsisjray