A.13.3 第二版和第三版不兼容的变化• 已经新加了259个内建函数,他们中的一些函数名字可能和已经使用的名字冲突。 • 如果可能的话,N[expr, n]现在总是给出n位的精度,而不是简单的从n位的精度开始计算。 • 所有仅包含数值函数和数值常量的表达式,无论包含任何近似数字,现在都转化成近似数值形式。 • 涉及不用求值的精确数字的任何表达式现在都进行求值计算。例如:Floor[(7/3)^20]. • Plus和Times在用户定义规则之前使用内部规则,因此去作如2+2=5的定义不再可能。 • 运算符 . 和 **的优先级已经被改变为低于^。因而,以前在InputForm中写的表达式a . b ^ n现在必须写成(a . b)^n. V2Get[file]读使用旧的运算符优先级的文件。 • \^现在是用来产生一个上标的运算符。在输入控制字符时,必须使用原来的八进制代码,而不是 \^A. • 在Mathematica笔记本里,一些内部Mathematica函数现在缺省使用一些特别字符输出。例如:x->y 使用 StandardForm输出 x->y 。 • 现在更复杂的定积分产生明确的 If 结构,除非不使用 GenerateConditions->False 选项设置. • HeldPart[expr, i, j, ... ]已经被 Extract[expr, i, j, ... , Hold]替代。 • Literal[pattern]已经被HoldPattern[pattern]替代。Verbatim[pattern]已经被引入。如DownValues这样的函数返回包含在HoldPattern中的值而不是在Literal中。 • ReplaceHeldPart[expr, new, pos]已经被ReplacePart[expr, Hold[new], pos, 1]替代。 • ToHeldExpression[expr]已经被ToExpression[expr, form, Hold]替代。 • Trig作为代数操作函数的一个选项已经被明确的函数TrigExpand, TrigFactor和TrigReduce替代。 • AlgebraicRules已经被PolynomialReduce替代。 • 选项LegendreType已经被一个额外的可选参数LegendreP和LegendreQ替代。 • WeierstrassP[u,  ,  ]现在取列表中的 和 。 • $Letters和$StringOrder现在已经有了内部值,但他们处理所有可能的 Mathematica字符。 • StringByteCount不再被支持。 • 任意精度的近似实值在InputForm中缺省作为digits`prec给出。这由$NumberMarks来控制 。 • 大的近似实值在InputForm中缺省作为digits*^exponent给出。 • HomeDirectory[ ] 已经被 $HomeDirectory替代。 • Dump已经被 DumpSave替代。 • 由于所有的计算机系统都支持管道和联接,$PipeSupported 和 $LinkSupported已经不再有效。 • LinkOpen已经被LinkCreate,LinkConnect 和 LinkLaunch替代。 • Subscripted已经被 RowBox, SubscriptBox等替代。 • Subscript 和Superscript现在已经完全被下标量和上标量重新表达,并不仅仅是下标和上标。 • FontForm 和 DefaultFont已经被StyleForm 和 DefaultStyle替代。 在笔记本前端,所做的改变包括: • 为了支持新的笔记本功能,笔记本的文件格式已经完全改变了。 • 笔记本文档现在缺省给出的扩展名是.nb而不是.ma;.mb文件现在是多余的。 • 会自动转换你要打开的旧的笔记本文档。 • 核命令NotebookConvert可以用来转换从第二版到第三版的笔记本文档。 • 输入单元的缺省格式类型现在是StandardForm而不是InputForm。 • 类型表的组织和一些缺省类型设置都发生了变化。 • 菜单的一些命令的热键已经被重新组织。
|