Files and Streams
|name.m||Mathematica language source file|
|name.nb||Mathematica notebook file|
|name.ma||Mathematica notebook file from before Version 3|
|name.mx||Mathematica expression dump|
|name.exe||MathLink executable program|
|name.tm||MathLink template file|
|name.ml||MathLink stream file|
Conventions for file names.
Most files used by Mathematica
are completely system independent. .mx and .exe files are however system dependent. For these files, there is a convention that bundles of versions for different computer systems have names with forms such as name/$SystemID/name
In general, when you refer to a file, Mathematica
tries to resolve its name as follows:
- If the name starts with !, Mathematica treats the remainder of the name as an external command, and uses a pipe to this command.
- If the name contains metacharacters used by your operating system, then Mathematica passes the name directly to the operating system for interpretation.
- Unless the file is to be used for input, no further processing on the name is done.
- Unless the name given is an absolute file name under your operating system, Mathematica will search each of the directories specified in the list $Path.
- If what is found is a directory rather than a file, then Mathematica will look for a file name/$SystemID/name.
For names of the form name`
the following further translations are done in Get
and related functions:
- A file name.mx is used if it exists.
- If name.mx is a directory, then name.mx/$SystemID/name.mx is used if it exists.
- A file name.m is used if it exists.
- If name is a directory, then the file name/init.m is used if it exists.
is taken to refer to a file or directory named name.exe
Types of streams.
Options for output streams.
You can test options for streams using Options
, and reset them using SetOptions