interpreter

An interpreter distribution.

For example, a CPython distribution from Python Standalone Builds or a JDK archive.

These are supplied by Providers and produce a file entry in the scie with special #{<id>:<name>} placeholder support for accessing named files within the distribution archive.

id

type: String

An identifier to use in #{<id>...} placeholders.

The #{<id>} placeholder can be used in command fields to reference the interpreter distribution archive. The #{<id>:<name>} placeholder can be used to reference named files provided by the interpreter distribution.

provider

type: String

The name of a Science Provider implementation.

The built-in provider implementations are documented here. Each provider implementation can define further configuration fields which should be specified in this table.

lazy

type: Boolean

default: false

Whether to lazily fetch the interpreter distribution at scie run-time.

By default, the interpreter distribution is fetched and embedded in the scie at build-time.

Note

Science uses ptex to perform lazy run-time fetching and will embed it as a file in the scie. You can control the version used and other aspects of the fetch with the ptex table.