You are looking at historical revision 34052 of this page. It may differ significantly from its current revision.

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
mingw32
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.

repository-path

[parameter] repository-path

Contains a string naming the paths to the extension repository, which defaults to either the value of the environment variable CHICKEN_REPOSITORY_PATH or the default library path (usually /usr/local/lib/chicken on UNIX systems). If multiple directories are given, then they should be separated by : (or ; on Windows.)

installation-repository

[parameter] installation-repository

Contains the name of the directory where extensions are installed (as opposed to the possible locations where they can be loaded or linked at runtime.)

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: srfi-23, srfi-30, srfi-39. If the eval unit is used (the default), the features srfi-0, srfi-2, srfi-6, srfi-8, srfi-9 and srfi-10 are defined. When compiling code (during compile-time) the feature compiling is registered. When evaluating code in the interpreter (csi), the feature csi is registered.

features

[procedure] (features)

Returns a list of all registered features that will be accepted as valid feature-identifiers by cond-expand.

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.


Previous: Module (chicken pathname)

Next: Module (chicken port)