| Did you know ... | Search Documentation: |
| sheet->catch_all |
<->catch_all
are called by PCE's message-passing system if there is no other
definition for a method. Class sheet
uses these methods to store and fetch attributes:
?- new(@s, sheet(name, age, address)), send(@s, name, gnu). ?- get(@s, name, X). X = gnu
This approach has, besides its definite charm, one drawbacks:
Attributes whose name collide with a method name cannot be accessed this
way. Code that handles unknown attribute names should use sheet<->value
to avoid this problem.