Browsing by Author "ZHU, Ping"
Now showing 1 - 2 of 2
Results Per Page
Sort Options
- ItemRequest and Assert: A pragmatic approach to generating specialization scenarios(2006-11-13T07:09:20Z) ZHU, Ping; KHOO, Siau-ChengA specialization scenario provides a programmer friendly mechanism communicating the information about specialization opportunities to partial evaluators. Unfortunately, the process of generating suitable scenarios remains an art only mastered by programmers with in-depth knowledge about partial evaluation. Existing works on generating scenarios either rely on a brute-force approach to generate all possible scenarios, or to introduce specific design patterns into the programming to facilitate extracting specialization scenarios. In this paper, we provide a lightweight approach to partial evaluation by enabling non-experts to declare two simple specialization concerns: request and assert. The request enables a programmer to declare specialization opportunities and an assert aims to prevent undesirable partial evaluation, such as infinite specialization, from occurring. We describe an algorithm that derives specialization scenarios by declaring the necessary binding-time values at program inputs, aiming at fulfilling any request and satisfy the assert meanwhile.
- ItemA Unified Framework for Partial Evaluation and Program Slicing(2005-01-26T02:33:11Z) ZHU, Ping; KHOO, Siau-ChengThe emphasis on code re-usability in component-based software development has resulted in degradation of system performance. Component specialization techniques have been proposed to overcome this problem. They mainly specialize components wrt contents of component interfaces. This requires specialization to be performed in either a forward or backward direction. The current state of the art applies partial evaluation for forward specialization, but applies backward slicing for backward specialization. In this research, we investigate the relationship between partial evaluation and program slicing in general. We establish a theoretical unified framework in which we can cast both transformations. This framework captures the essence of these two techniques and enables a consistent treatment of program specialization in both forward and backward directions. This framework also make it possible to develop new specialization through cross-fertilization between existing program slicing and partial evaluation techniques.