Module (chicken platform)
This module provides procedures for obtaining information about the platform on which the program is currently running.
Build information
These procedures return information about options that can be specified at build time.
build-platform
[procedure] (build-platform)Returns a symbol specifying the toolset which has been used for building the executing system, which is one of the following:
cygwin mingw gnu intel clang sun unknown
chicken-home
[procedure] (chicken-home)Returns a string which represents the installation directory (usually /usr/local/share/chicken on UNIX-like systems).
chicken-version
[procedure] (chicken-version [FULL])Returns a string containing the version number of the CHICKEN runtime system. If the optional argument FULL is given and true, then a full version string is returned.
include-path
[procedure] (include-path [PATHLIST])Returns a list of directory names where include and include-ci locate files to be included. If PATHLIST is given, the current include path is changed to that value, which must be a list of strings.
repository-path
[parameter] repository-pathContains a list of strings naming the paths to the extension repository, which defaults to the value of the environment variable CHICKEN_REPOSITORY_PATH, split on : (or ; on Windows). If the environment variable is not set, it will be a list containing the default library path (usually /usr/local/lib/chicken on UNIX systems).
installation-repository
[parameter] installation-repositoryContains the name of the directory where extensions are installed (as opposed to the possible locations where they can be loaded or linked at runtime.)
system-config-directory
[procedure] (system-config-directory)Returns the location of the directory for configuration files. This obeys the XDG specification, so when the XDG_CONFIG_HOME environment variable is set, its value is used. When it's not set, it will default to $HOME/.config on UNIX and $APPDATA on Windows.
system-cache-directory
[procedure] (system-cache-directory)Returns the location of the directory for caches. This obeys the XDG specification, so when the XDG_CACHE_HOME environment variable is set, its value is used. When it's not set, it will default to $HOME/.cache on UNIX and $LOCALAPPDATA or $APPDATA on Windows.
Machine information
These procedures return information about the type of CPU/architecture the program is running on.
machine-byte-order
[procedure] (machine-byte-order)Returns the symbol little-endian or big-endian, depending on the machine's byte-order.
machine-type
[procedure] (machine-type)Returns a symbol specifying the processor on which this process is currently running, which is one of the following:
arm alpha mips hppa ultrasparc sparc ppc ppc64 ia64 x86 x86-64 unknown
Software information
These procedures return information about the type of operating system the program is running on.
software-type
[procedure] (software-type)Returns a symbol specifying the operating system on which this process is currently running, which is one of the following:
android windows unix ecos unknown
software-version
[procedure] (software-version)Returns a symbol specifying the operating system version on which this process is currently running, which is one of the following:
linux freebsd netbsd openbsd macosx hpux dragonfly haiku solaris sunos aix hurd unknown
Feature identifiers
CHICKEN maintains a global list of features naming functionality available in the current system. Additionally the cond-expand form accesses this feature list to infer what features are provided. Predefined features are chicken, and the SRFIs (Scheme Request For Implementation) provided by the base system. Refer to cond-expand for a full list of predefined identifiers.
feature?
[procedure] (feature? ID ...)Returns #t if all features with the given feature-identifiers ID ... are registered.
register-feature!
[procedure] (register-feature! FEATURE ...)Register one or more features that will be accepted as valid feature-identifiers by cond-expand. FEATURE ... may be a keyword, string or symbol.
unregister-feature!
[procedure] (unregister-feature! FEATURE ...)Unregisters the specified feature-identifiers. FEATURE ... may be a keyword, string or symbol.
Returning to the host program
return-to-host
[procedure] (return-to-host)Exits the Scheme code and returns to the invoking context that called CHICKEN_run or CHICKEN_continue.
After return-to-host has been executed and once CHICKEN_run returns, you can invoke callbacks which have been defined with define-external.
Previous: Module (chicken pathname)
Next: Module (chicken plist)