TPL - Tool Protocol Language. ''NB: this is not a description of a new language, but an essay on thinking about tcl in a different way.'' The world has many protocols for communicating between processes ('''IPC'''). Some are binary, some are ASCII. I will call ASCII protocols for IPC ''protocol languages.'' Examples of ''protocol languages'' and ''binary protocols'' * XML is used in XML RPC type IPC. * FCGI, SCGI, CGI have aspects of protocol languages, and some of binary protocols. * HTTP is used in [REpresentational State Transfer, REST] * [JSON] is used in [AJAX] * several data representation languages [YAML], ... * XDR is a binary protocol used in SUN RPC * command-line protocol - used to invoke commands from a process, per the unix '''system()''' command, e.g. Tcl (arguably) has many characteristics desirable in a ''protocol language'': * minimal syntax * readily parseable * omnipresence * well known and understood * flexible * expressive * long history of data-as-code and code-as-data * long history of use of [little languages] The purpose of this page is to argue this assertion, to explore the truth of the foregoing assertion, to explore counterarguments, to deepen understanding of tcl as a protocol language, to explore prerequisites for its use in this role. It seems to me [CMcC] that a cut-down tcl syntax, without special meaning attributed to {*}, $ and [] would serve well in this role. Such a restricted syntax should be called TPL. ---- !!!!!! %| enter categories here |% !!!!!!