This module provides internal information about the current running runtime system (engine and enviroment). That information includes the architecture, platform, operating system, location of libraries, and C header files. That information is mainly used in parts of the Ciao dynamic compilation (location of source, generation of gluecode for the foreign interface, etc.).
Computer architectures are identified by a simple atom. This atom is implementation-defined, and may suffer any change from one Ciao version to another.
For example, Ciao running on an 32-bit Intel-based machine will retrieve:
?- get_arch(I). I = i686 ? ; no ?-
Unifies ArchDescriptor with a simple atom which describes the computer architecture currently executing the predicate.
Operating systems are identified by a simple atom. This atom is implementation-defined, and may suffer changes from one Ciao version to another.
For example, Ciao running on Linux will retrieve:
?- get_os(I). I = 'LINUX' ? ; no ?-
Unifies OsDescriptor with a simple atom which describes the running operating system when predicate was called.
Platform is the atom describing the current operating system and computer architecture.
Unifies Debug with the value of core:debug_level configuration flag used to build this engine.
This engine is linked as a shared library (instead of as an executable)
Ext is the default extension for the executable Ciao programs.
Ext is the extension for executables.
Ext is the default extension for the shared libraries. For example, .dll in Windows and .so in most Unix systems.
Ext is the default extension for the static libraries.
Path is the path to the root of the installed Ciao header C files (.h), typically used for interfacing Ciao and C.