Did you know ... | Search Documentation: |
Pack logtalk -- logtalk-3.86.0/manuals/_sources/faq/general.rst.txt |
.. This file is part of Logtalk https://logtalk.org/ SPDX-FileCopyrightText: 1998-2024 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.
.. _faq_general:
The numbers "2" and "3" in the Logtalk version string refer to, respectively, the second and the third generations of the Logtalk language. Development of Logtalk 2 started in January 1998, with the first alpha release for registered users in July and the first public beta on October. The first stable version of Logtalk 2 was released in February 9, 1999. Development of Logtalk 3 started in April 2012, with the first public alpha released in August 21, 2012. The first stable version of Logtalk 3 was released in January 7, 2015.
.. _faq_general_prolog:
Currently, the Logtalk language is implemented as a trans-compiler to Prolog instead of as a standalone compiler. Compilation of Logtalk source files is performed in two steps. First, the Logtalk compiler converts a source file to a Prolog file. Second, the chosen Prolog compiler is called by Logtalk to compile the intermediate Prolog file generated on the first step. The implementation of Logtalk as a trans-compiler allows users to use Logtalk together with features only available on specific Prolog compilers.
.. _faq_general_modules:
No. Logtalk is (currently) implemented in plain Prolog code. Only a
few Prolog compilers include a module system, with several
compatibility problems between them. Moreover, the current ISO Prolog
standard for modules is next to worthless and is ignored by most of
the Prolog community. Nevertheless, the Logtalk compiler is able to
compile simple modules (using a common subset of module directives)
as objects for backward-compatibility with existing code (see the
:ref:migration_migration
for details).
.. _faq_general_expansion:
No. Term-expansion mechanisms are not standard and are not available in all supported Prolog compilers.