# TIP 440: Add engine to tcl_platform Array
	Author:         Joe Mistachkin <joe@mistachkin.com>
	Author:         Jan Nijtmans <jan.nijtmans@gmail.com>
	State:          Final
	Type:           Project
	Vote:           Done
	Created:        14-Jan-2016
	Post-History:   
	Keywords:       language implementation,platform
	Tcl-Version:    8.5
	Tcl-Branch:     tclPlatformEngine
-----

# Abstract

This TIP proposes a mechanism for determining the implementation of the Tcl
language currently in use.

# Rationale

There is more than one implementation of the Tcl language \(see
<http://wiki.tcl.tk/13992> \). These implementations differ greatly in their
degree of compatibility and completeness. At the script level, there is
currently no standard way to determine which implementation of the Tcl
language is being used.

# Specification

The **engine** element will be added to the **tcl\_platform** array. Its
value will be set to **"Tcl"**.

# Reference Implementation

A reference implementation of this TIP is available
<https://core.tcl-lang.org/tcl/timeline?r=tclPlatformEngine> .

The TH1, Jim, Picol, JTcl, and Eagle implementations of the Tcl language already
implement this feature, each using the name of the project as the value of
the **tcl\_platform\(engine\)** element.

# Copyright

This document has been placed in the public domain.

