A '''script''' is a contains [command%|%commands] separated by a semicolon or
newline. More generally, a script is a set of statements written in the
[scripting language%|%language] of an [interpreter] such as [Tcl].
** See Also **
[Dodekalogue]: The rules of Tcl.
[Many ways to eval]: enumerates the ways to evaluate a string as a script
[cmdSplit%|%scriptSplit]: split a script into its constituent commands
[parsetcl]:
[scripted list]: use a script as a list
** Description **
A script can be provided to Tcl in various ways:
Invocation of an interpreter such as [tclsh]: The name of the file can be passed as an argument.
`[source]`: the file name can be passed as an argument.
`[eval]`: arguments are concatenated and evaluated as a script.
`[script substitution]`: A script is embedded directly in another script.
A script often provides a [library] for use by other scripts.
Tcl's sparse syntax makes it particularly convenient to embed code written in
another language directly into a Tcl script. [SQL],
[Perl], [ksh], [awk], or even [C] code can then be handed off to to some
other interpreter for evaluation. [SQL] is probably the most well-known
example of this. When dynamically generating scripts for another language, it
is necessary to be aware of possible [Injection Attack%|%injection attacks].
<<categories>> Glossary