| 27 | | object parameters. They may be stored on the database as Prolog facts. This |
| 28 | | results in a very compact representation, which can be an advantage when |
| 29 | | dealing with a large number of objects with immutable state. In addition, all |
| 30 | | the predicates dealing managing these compact representation are encapsulated |
| 31 | | in a parametric object. This can be, however, a fragile solution as changes on |
| 32 | | the parametric object ancestors may imply changes to the number and meaning of |
| 33 | | the parametric object parameters which, in turn, may imply changes to all the |
| 34 | | Prolog facts used to represent the individual objects. |
| | 27 | object parameters. Proxy terms may be stored on the database as Prolog facts |
| | 28 | or as Prolog rules (parameter instantiation can be deduced instead of being |
| | 29 | fixed). This results in a very compact representation, which can be an |
| | 30 | advantage when dealing with a large number of objects with immutable state. |
| | 31 | In addition, all the predicates managing these compact representation are |
| | 32 | encapsulated in a parametric object. This can be, however, a fragile solution |
| | 33 | as changes on the parametric object ancestors may imply changes to the number |
| | 34 | and meaning of the parametric object parameters which, in turn, may imply |
| | 35 | changes to all the Prolog facts used to represent the individual objects. |