Did you know ... Search Documentation:
Pack logtalk -- logtalk-3.86.0/examples/roots/NOTES.md

This file is part of Logtalk https://logtalk.org/ SPDX-FileCopyrightText: 1998-2023 Paulo Moura <pmoura@logtalk.org> SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

To load this example and for sample queries, please see the SCRIPT.txt file.

This folder contains rewritten versions of some objects provided with previous, 1.x versions, of Logtalk. They are intended to help the conversion of applications from Logtalk 1.x to 2.x and to support most of the other examples provided with the current Logtalk distribution.

Short description of each example entity:

[99, 108, 97, 115, 115]
default metaclass for all classes
[99, 108, 97, 115, 115, 112]
protocol of class class
[97, 98, 115, 116, 114, 97, 99, 116, 95, 99, 108, 97, 115, 115]
default metaclass for all abstract classes
[97, 98, 115, 116, 114, 97, 99, 116, 95, 99, 108, 97, 115, 115, 112]
protocol of class abstract_class
[111, 98, 106, 101, 99, 116]
root class for class-based hierarchies
[111, 98, 106, 101, 99, 116, 112]
protocol of class object
[105, 110, 105, 116, 105, 97, 108, 105, 122, 97, 116, 105, 111, 110]
category defining methods for object initialization
[112, 114, 111, 116, 111]
root prototype for prototype-based hierarchies
[112, 114, 111, 116, 111, 112]
protocol for prototype proto
[110, 105, 108]
object used to represent a void reference

Please note that the entities above are just example definitions. There is nothing fundamental about any of them; they can and should be replaced by definitions better fitted to the requirements of specific applications.

For a simpler version of this example, see the reflection example. If you are not familiar with the concept of metaclass used in this example, see the metaclasses example first.