Skip to main content
Kent Academic Repository

Side-Effect Localization for Lazy, Purely Functional Languages via Aspects

Chen, Kung, Weng, Shu-Chun, Lin, Jia-Yin, Wang, Meng, Khoo, Siau-Cheng (2011) Side-Effect Localization for Lazy, Purely Functional Languages via Aspects. Higher-Order and Symbolic Computation, . pp. 1-39. ISSN 1388-3690. (KAR id:47476)


Many side-effecting programming activities, such as profiling and tracing,

can be formulated as crosscutting concerns and be framed as side-effecting aspects in the aspect-oriented programming paradigm. The benefit gained from this separation of concerns is particularly evident in purely functional programming, as adding such aspects using techniques such as monadification will generally lead to crosscutting changes. This paper presents an approach to provide side-effecting aspects for lazy purely functional languages in a user transparent fashion. We propose a simple yet direct state manipulation construct for developing side-effecting aspects and devise a

systematic monadification scheme to translate the woven code to monadic style purely functional code. Furthermore, we present a static and dynamic semantics of the aspect programs and reason about the correctness of our monadification scheme with respect to them.

Item Type: Article
Uncontrolled keywords: Aspect-oriented programming, Side-effect, Lazy semantics, Monadification
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 75 Electronic computers. Computer science
Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Meng Wang
Date Deposited: 28 Feb 2015 23:39 UTC
Last Modified: 16 Nov 2021 10:19 UTC
Resource URI: (The current URI for this page, for reference purposes)

University of Kent Author Information

Wang, Meng.

Creator's ORCID:
CReDIT Contributor Roles:
  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.