Tcl has '''tm''' commands for managing access to [tcl modules] : '''::[tcl::tm::path add]''' ''path'' ... : '''::[tcl::tm::path remove]''' ''path'' ... : '''::[tcl::tm::path list]''' : '''::[tcl::tm::roots]''' ''path'' ... A list of directories (the "module path") is managed by the commands ::tcl::tm::path and ::tcl::tm::roots. For example, the current value of the module path is returned by the command [[::tcl::tm::path list]]. To load a module into the interpreter, you use [package require] as usual for a Tcl package (this is not properly documented in the manual pages of [package] and [tm]). The command [package require] searches the "module path" directories for modules, which are files named "*.tm". The name of the module file determines the name and version that are entered into the package database when module directories are scanned. If the mechanism finds a corresponding module file, it will we [source]d. See http://www.tcl.tk/man/tcl8.5/TclCmd/tm.htm for a full discussion of module filename requirements, resolution of '::' in module names, and translation of '::' to directory separator characters. See [Tcl modules] for more on modules. See [Distribution Mechanisms] for a discussion of extension mechanisms in general. ---- (1) TM frequently is used as an abbreviation of the word ''Trademark''. See http://uspto.gov/ [[add other references]] for more info on the legal ramifications of a trademark. <> Command | Glossary