This page is driven mostly by the [http://www.tcl.tk/man/tcl8.6/TclCmd/contents.htm%|%8.6 manual build]. Note that some commands may be listed with a `****` against them. That is because they are present in multiple categories; they are [ensemble]s (and related) and have partial compliations. **Already bytecoded** === append break catch concat continue dict **** dict append dict for dict get dict incr dict lappend dict map dict set dict update dict with error eval expr for foreach global if incr info **** info coroutine info exists info level lappend lassign lindex list llength lmap lrange lreplace lset mathop *** namespace **** namespace current namespace upvar regexp return self **** self object set string **** string compare string equal string index string length string match subst switch throw try unset upvar variable while === [AMG]: lmap? **Potential candidates for bytecoding** Note that there is no consideration of whether these ''should'' be bytecoded; with many of them, it might well be a very bad idea for other reasons (e.g., costly internal algorithms). === array array anymore array donesearch array exists array get array names array nextelement array set array size array startsearch array unset binary binary decode binary encode binary format binary scan dict **** dict create dict exists dict filter dict keys dict merge dict remove dict replace dict size dict unset dict values format info **** info args info body info class info cmdcount info commands info complete info default info errorstack info frame info functions info globals info locals info object info patchlevel info procs info script info tclversion info vars join linsert lrepeat lreverse lsearch lsort mathfunc namespace **** namespace children namespace code namespace delete namespace ensemble namespace eval namespace exists namespace export namespace forget namespace import namespace inscope namespace origin namespace parent namespace path namespace qualifiers namespace tail namespace unknown namespace which next regsub scan self **** self call self caller self class self filter self method self namespace self next self target split string **** string first string is string last string map string range string repeat string replace string reverse string tolower string totitle string toupper string trim string trimleft string trimright string wordend string wordstart tailcall tcl::prefix tcl::prefix all tcl::prefix longest tcl::prefix match time uplevel yield yieldto === **Commands that will never be bytecoded** ***Low-level details/internals*** === array array statistics dict **** dict info encoding **** encoding system memory memory active memory break_on_malloc memory info memory init memory objs memory onexit memory tag memory trace memory trace_on_at_malloc memory validate string **** string bytelength unsupported tcl::unsupported::assemble tcl::unsupported::disassemble tcl::unsupported::inject tcl::unsupported::representation === ***OS connectivity, script library*** === after after after cancel after idle after info auto_execok auto_import auto_load auto_mkindex auto_path auto_qualify auto_reset bgerror cd chan chan blocked chan close chan configure chan copy chan create chan eof chan event chan flush chan gets chan names chan pending chan pipe chan pop chan postevent chan push chan puts chan read chan seek chan tell chan truncate clock clock add clock clicks clock format clock microseconds clock milliseconds clock scan clock seconds close dde dde eval dde execute dde poke dde request dde servername dde services encoding encoding convertfrom encoding convertto encoding dirs encoding names eof exec exit fblocked fconfigure fcopy file file atime file attributes file channels file copy file delete file dirname file executable file exists file extension file isdirectory file isfile file join file link file lstat file mkdir file mtime file nativename file normalize file owned file pathtype file readable file readlink file rename file rootname file separator file size file split file stat file system file tail file tempfile file type file volumes file writable fileevent flush gets glob history history add history change history clear history event history info history keep history nextid history redo http http::cleanup http::code http::config http::data http::error http::formatQuery http::geturl http::meta http::ncode http::register http::reset http::size http::status http::unregister http::wait info **** info hostname info library info loaded info nameofexecutable info sharedlibextension interp interp alias interp aliases interp bgerror interp cancel interp create interp debug interp delete interp eval interp exists interp expose interp hide interp hidden interp invokehidden interp issafe interp limit interp marktrusted interp recursionlimit interp share interp slaves interp target interp transfer load msgcat msgcat::mc msgcat::mcflmset msgcat::mcflset msgcat::mcload msgcat::mclocale msgcat::mcmax msgcat::mcmset msgcat::mcpreferences msgcat::mcset msgcat::mcunknown open package package forget package ifneeded package names package prefer package present package provide package require package require package unknown package vcompare package versions package vsatisfies parray pid pkg::create pkg_mkIndex platform platform::generic platform::identify platform::patterns platform::shell platform::shell::generic platform::shell::identify platform::shell::platform puts pwd read refchan registry safe safe::interpAddToAccessPath safe::interpConfigure safe::interpCreate safe::interpDelete safe::interpFindInAccessPath safe::interpInit safe::setLogCmd seek socket source tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord tcl_wordBreakAfter tcl_wordBreakBefore tcltest tcltest::bytestring tcltest::cleanupTests tcltest::configure tcltest::customMatch tcltest::debug tcltest::errorChannel tcltest::errorFile tcltest::interpreter tcltest::limitConstraints tcltest::loadFile tcltest::loadScript tcltest::loadTestedCommands tcltest::makeDirectory tcltest::makeFile tcltest::match tcltest::matchDirectories tcltest::matchFiles tcltest::normalizeMsg tcltest::normalizePath tcltest::outputChannel tcltest::outputFile tcltest::preserveCore tcltest::removeDirectory tcltest::removeFile tcltest::runAllTests tcltest::singleProcess tcltest::skip tcltest::skipDirectories tcltest::skipFiles tcltest::temporaryDirectory tcltest::test tcltest::testConstraint tcltest::testsDirectory tcltest::verbose tcltest::viewFile tcltest::workingDirectory tell tm tcl::tm::path tcl::tm::roots trace trace add trace info trace remove trace variable trace vdelete trace vinfo transchan unknown unload update vwait zlib zlib adler32 zlib compress zlib crc32 zlib decompress zlib deflate zlib gunzip zlib gzip zlib inflate zlib push zlib stream === ***Command creation and related*** === apply coroutine oo::class oo::copy oo::define oo::objdefine oo::object proc rename my === **Not actually commands** These have manpage links, but aren't commands. === Tcl argc argv argv0 env errorCode errorInfo filename re_syntax tcl_interactive tcl_library tcl_nonwordchars tcl_patchLevel tcl_pkgPath tcl_platform tcl_precision tcl_rcFileName tcl_traceCompile tcl_traceEval tcl_version tcl_wordchars === <>Internals