|
Abstract : |
A logical characterization of the typical features of object-oriented languages could yield a clear semantical counterpart of their operational meaning and, at the same time, it could allow to define a logic programming language in which it is possible to reason over highly-complex data structures. Many approaches to this problem have been proposed in the last years. Classical logic turned out to be unsuitable to model complex mechanisms, such as the dynamic modifications of the state of the objects, in a satisfactory way. Girard's Linear Logic [5] provides the means to handle many operational aspects of programming languages from a proof theoretical perspective as shown by Andreoli and Pareschi in [2]. In the paper Forum [11], a presentation of higher-order linear logic, is specialized to deal with state-based systems according to the proof as computation perspective. In this setting it is possible to represent a concrete notion of object assigning a logical meaning to features like class, encapsulation and data abstraction. This should be considered as the first step to reconstruct a complete object-oriented language inside a linear logic-based framework. 1, |