CitedEvidence
User Settings
Article

The CLOVER Rewrite Rules: A Translation from OOFP to FP

2

TL;DRAbstract

. There have been many attempts to integrate object-oriented and functional programming. Solving the conflicting requirements is difficult and only recently has a language, CLOVER, been designed that is both purely functional and purely object-oriented (and retains complete type safety). In this paper, we introduce the CLOVER rewrite rules by presenting a translation from CLOVER to a simple functional language. The object-oriented features are translated away in stages; the resulting translations are combined to provide a translation from object-oriented functional programming to functional programming. 1 Introduction CLOVER [BC96, BC97a, BC97b] is a visual object-oriented functional language which fully supports both object-oriented programming (OOP) and functional programming (FP) paradigms. OOP is supported through features such as a single-rooted class hierarchy (with pure encapsulation), attribute and method inheritance, overloading and overriding of methods, subsumption through .

Chat with Paper

AI Agents for this Paper

. There have been many attempts to integrate object-oriented and functional programming. Solving the conflicting requirements is difficult and only recently has a language, CLOVER, been designed that is both purely functional and purely object-oriented (and retains complete type safety). In this paper, we introduce the CLOVER rewrite rules by presenting a translation from CLOVER to a simple functional language. The object-oriented features are translated away in stages; the resulting translations are combined to provide a translation from object-oriented functional programming to functional programming. 1 Introduction CLOVER [BC96, BC97a, BC97b] is a visual object-oriented functional language which fully supports both object-oriented programming (OOP) and functional programming (FP) paradigms. OOP is supported through features such as a single-rooted class hierarchy (with pure encapsulation), attribute and method inheritance, overloading and overriding of methods, subsumption through .

Keywords

RewritingTranslation (biology)LinguisticsComputer scienceMathematicsProgramming languagePhilosophyBiology

Chat

Click to start Chat