Symbolic Logic:Programming:Framework

A framework implements common functionality across multiple classes,

Persistence
The standard model for persistence is that class data is saved and restored by the persistence layer. Relational databases do more than that by supporting searching and selection of objects as well.

Usings a relational database, the search/selection condition is written in a separate language (SQL). This is bad. We would like to use boolean selection function within the language for selecting records so that the functionality is written in one language, and so that a selection function may be composed from other high level functions on the object.

Using Logic Programming and Renaming Inheritance the Object Relational Mapping supports the use of functions in the language for selection.

Also the ORM allows navigation between objects based on foreign key relationships.

User Interface
Based on the Model-View-Controller, firstly the view is composed of widgets. Then implement the controller as a class hierarchy of controllers for each widget. The controllers for each widget connect to the attributes of the model.

Renaming inheritance is used to allow the controller to be created out of individual classes for each widget/attribute. Virtual functions may be overridden in the controller as event handlers.

Messaging Systems
A Message System supports the sending of all the data required for an action in a single call or method. This supports the decoupling of class functionality, and provides a new paradigm for software development.

Links

 * Symbolic Logic:Programming
 * Intelligence and Reasoning