A.13 Incompatible Changes in Version 3.0
A very large number of new capabilities have been added since Version 2 of Mathematica. Functions that were added in Version 3 are indicated by in the listing of built-in objects in Section A.10.3.
Sections in the main part of this book that are completely new are indicated by . Those that have been substantially revised or enhanced are indicated by . Note that even though no significant change may have been made in the description of particular capabilities, the capabilities themselves have in many cases been greatly extended for Version 3.
For the most part, the changes made in Version 3 are purely additions. There are, however, a few features of Version 3 which are incompatible with Version 2. These include:
Many new built-in objects have been added, some of whose names may conflict with symbols you have been using.
] now always tries to give n digits of precision if possible, rather than simply starting with n digits of precision.
All expressions containing only numeric functions and numerical constants are now converted to approximate numerical form whenever they contain any approximate numbers.
Many expressions involving exact numbers that used to remain unevaluated are now evaluated. Example: Floor[(7/3)^20].
Plus and Times now apply built-in rules before user-defined ones, so it is no longer possible to make definitions such as 2+2=5.
The operator precedence for . and ** has been changed so as to be below ^. This has the consequence that expressions previously written in InputForm as a
n must now be written as (a
] will read a file using old operator precedences.
\^ is now an operator used to generate a superscript. Raw octal codes must be used instead of \^
A for inputting control characters.
In Mathematica notebooks, several built-in Mathematica functions are now output by default using special characters. Example: x
y is output as xy in StandardForm.
More sophisticated definite integrals now yield explicit If constructs unless the option setting GenerateConditions->False is used.
, ... ] has been superseded by Extract[
] has been replaced by HoldPattern[
] has been introduced. Functions like DownValues return their results wrapped in HoldPattern rather than Literal.
] has been superseded by ReplacePart[
] has been superseded by ToExpression[
Trig as an option to algebraic manipulation functions has been superseded by the explicit functions TrigExpand, TrigFactor and TrigReduce.
AlgebraicRules has been superseded by PolynomialReduce.
The option LegendreType has been superseded by an additional optional argument to LegendreP and LegendreQ.
] now takes and in a list.
$Letters and $StringOrder now have built-in values only, but these handle all possible Mathematica characters.
StringByteCount is no longer supported.
Arbitrary-precision approximate real numbers are now given by default as digits
prec in InputForm. This behavior is controlled by $NumberMarks.
Large approximate real numbers are now given by default as digits
exponent in InputForm.
] has been replaced by $HomeDirectory.
Dump has been superseded by DumpSave.
$PipeSupported and $LinkSupported are now obsolete, since all computer systems support pipes and links.
LinkOpen has been superseded by LinkCreate, LinkConnect and LinkLaunch.
Subscripted has been superseded by RowBox, SubscriptBox, etc.
Subscript and Superscript now represent complete subscripted and superscripted quantities, not just subscripts and superscripts.
FontForm and DefaultFont have been superseded by StyleForm and DefaultStyle.
In the notebook front end, changes that have been made include:
The file format for notebooks has been completely changed in order to support new notebook capabilities.
Notebook files are now by default given .nb rather than .ma extensions; .mb files are now superfluous.
The front end will automatically ask to convert any old notebook that you tell it to open.
The kernel command NotebookConvert can be used to convert notebook files from Version 2 to Version 3 format.
The default format type for input cells is now StandardForm rather than InputForm.
The organization of style sheets, as well as the settings for some default styles, have been changed.
Some command key equivalents for menu items have been rearranged.
In general, great effort is made to ensure that successive versions of Mathematica are fully compatible. However, in maintaining the coherence of the system, certain functions must gradually be changed. In Version 3.0, functions that became obsolete in Version 2.0 are no longer supported at all.