Mathematicaバージョン1以降の非互換変更
イントロダクション | バージョン7と8 |
バージョン14以降 | バージョン6とバージョン7 |
バージョン13と14 | バージョン5とバージョン6 |
バージョン12とバージョン13 | バージョン4とバージョン5 |
バージョン11とバージョン12 | バージョン3とバージョン4 |
バージョン10とバージョン11 | バージョン2とバージョン3 |
バージョン9と10 | バージョン1とバージョン2 |
バージョン8と9 |
Wolfram言語の新バージョンには,常に多くの新しい機能が含まれている.しかし当初からの周到なデザインにより,すべてのバージョン間でほぼ完全な互換性が保たれている.その結果,例えば1988年のWolfram言語バージョン1用に書かれたほとんどすべてのコードは,バージョン13でもそのまま変更なしで走り,かつ実行速度も大いに向上している.
しかし不可避の問題として,コードで大文字で始まる名前が使用されている場合,そのプログラムが最初に書かれたバージョン以降に,その名前と競合するような組込み関数がWolfram言語に追加された可能性や,シンタックスが変更されてその関数のオプション指定が変わったため使用法に影響が出る可能性もある.
さらに,Wolfram言語の全体を通した一貫性の保持のため,初期のバージョンの機能のうち,最初はアンドキュメント化,次に使用された場合に警告が発生し,段階的に削除されたものがある.さらに,初期のバージョンと互換でない特定の関数に対して,変更を加えることも必要になった場合もある.
14.0と14.1
- 14.1からMathematica,Wolfram|One,Wolfram|Alpha Notebook Edition等のいくつかの製品が,統合されたWolframアプリケーションの一部になった.このアプリケーションでは$InstallationDirectory,$BaseDirectory,$UserBaseDirectoryの値が異なる.この詳細は「MathematicaからWolframへのアップグレード」で説明してある.
- Wolfram言語によって使われる,場所をカスタマイズするための環境変数が変更された.MATHINITはWOLFRAMNB_INITに,MATHEMATICA_BASEはWOLFRAM_BASEに,MATHEMATICA_USERBASEはWOLFRAM_USERBASEになった.
- Windowsでは,フロントエンドまたはスタートメニューで起動されたカーネルの現在の作業ディレクトリが,ドキュメントフォルダではなくユーザのプロファイルディレクトリになった.
- Options["symbol"]は,存在する場合は名前が"symbol"であるシンボルのオプションをチェックするようになった.名前を文字列として与えてストリームを指定することは,Wolfram言語の将来のバージョンではサポートされなくなる.
- Colorizeを介してアルファチャンネルがデフォルトで保存されるようになった.
- WebImageSearch が入力としてFixedOrderパターンオブジェクトを受け入れなくなった.
- ニューラルネットワーク評価の第2引数の解釈が変更された.net[data, "string"]は"string"を常にネット特性として解釈するようになった.ポートはNetPort["string"]として指定しなければならない.
- データ範囲外でサンプルされたTimeSeriesオブジェクトおよびTemporalDataオブジェクトが,補間の使用についての警告をデフォルトでは与えなくなった.
- 14.0以前ではCreateCompilerEnvironment[ TargetSystem Automatic]で現行プラットフォームのコンパイラ環境が生成された.14.1ではCreateCompilerEnvironment[ TargetSystem Automatic]でよく使われるプラットフォームの範囲に対するコンパイラ環境が生成される.以前の動作はCreateCompilerEnvironment[ TargetSystem Inherited](デフォルト)で再生できる.
13.3と14.0
- ParallelMapのようなデータ並列計算内部でAbortが生成されると,それがマスターカーネルに伝わり計算全体が放棄される.これは逐次計算の場合と同じ動作である.以前は並列計算の場合は実行し続けていた.
- ValueQ[LocalSymbol[…]]は常にTrueを与える代りに,局所的記号が存在するかどうかをチェックするようになった.
- FindExternalEvaluatorsが特性"Version"を返さなくなった.
- ExternalEvaluate[{system,"Version"…},…]という使い方が非推奨になった.
- VerificationTest,TestEvaluate,TestReportが結果"Error"の代りに"Failure"を返すようになった."UncaughtThrowFailure"や"SameTestUnevaluated"等のさまざまなタイプの失敗モードを含む新しい特性"FailureType"が加わった.
- 13.2で使われなくなった書式ツールバーが14.0で除去された.
- 環境設定メニューの"Enable Parallel Monitoring Tools"で"Parallel`Debug`"が$ContextPathに加えられることがなくなった.
- RLinkが付随していた同梱のRをサポートしなくなった.代りに既存の外部Rを自動的に見付け使用するようになった(詳細はInstallRドキュメントページを参照のこと).
- ChatEvaluateとLLMSynthesizeのMaxItemsオプションが非推奨になった.代りにLLMConfigurationの特性"MaxTokens"が使えるようになった.
- 明示的なVertexTextureCoordinatesの値が指定されていない場合,Texture[]は新規のTextureMappingオプションによって指定される投影法(デフォルトはAutomatic)を使うようになった.前の動作を復元したい場合は,投影法から取り除きたいそれぞれのプリミティブに設定TextureMappingNoneを適用する.
- "Domain"は指定されているが, "Path" コンポーネントの指定がないURLBuildコマンドによって作成されたURLの末尾にスラッシュが付かなくなった.
- "ReportFinished" issued by TestReportによって作成される"ReportFinished"イベントは"ReportCompleted"と命名された.
- TestReportのためのHandlerFunctionsのキー "Event" は"EventName"と命名された.
13.2と13.3
- 変数依存性が明示的に指定されていない場合,DiffusionPDETerm等の偏微分方程式項関数はより積極的に出力を自動簡約するようになった.
- 含まれていたJava SSHクライアントが廃止され,レイアウトから削除されている.カスタマイズされたリモートカーネル設定はローカルのSSHコマンドに依存するようになった.
- TestResultObjectが廃止され,新しいTestObjectが使われるようになった.
- SolidMechanicsPDEComponentのパラメータ"ModelForm"の名前が"SolidMechanicsModelForm"に変更された."ModelForm"パラメータはすべてのPDEコンポーネントにおける保存型対流と非保存型対流を区別するためだけに使われるようになった.
- SolidMechanicsPDEComponentのパラメータ"MaterialModel"の名前が"SolidMechanicsMaterialModel"に変更された.
- 並列カーネルのデフォルトリストが,$DefaultKernelsの代りに$DefaultParallelKernelsになった.バージョン13.3が最初に起動したとき,古い$DefaultKernelsの既存の永続設定は移行される.したがって$DefaultParallelKernelsは永続設定を維持する.
- 書式化された出力が入力として使われるとき,Highlightedラッパーがデフォルトでは削除されなくなった.以前の動作を復元したい場合は,新しいオプションStripOnInput→Trueを使う.
- AssociationのHoldAllComplete属性を配慮して,ReplaceがReplaceAll,ReplaceAt,ReplaceRepeatedと一致するようになった.連想に挿入される前に変換が自動的に評価されなくなった.評価された変換を挿入する必要がある場合は,lhs :> rhs の代りに標準的な慣用句である lhs:>With[{new=rhs},new/;True]を使う.
- PGN形式およびFEN形式が使われなくなった.これらはWolfram Paclet Repositoryのパクレットに含まれている.
- ImageSaliencyFilterがデフォルトで"U2Net"メソッドを使うようになった.以前のデフォルトは"ImageSignature"であった.
- IdentityMatrix,DiagonalMatrix,ToeplitzMatrix,HankelMatrix,FourierMatrixが大きいサイズの行列について,明示的なリストではなく構造化された配列オブジェクトをデフォルトで返すようになった.オプションTargetStructure "Dense"を加えると以前の動作を再現することができる.
- ChatToolsパクレットが廃止され,Wolfram製品に含まれなくなった.
- ByteArray[{}]およびByteArray[""]が空のリストではなくByteArrayオブジェクトを返すようになった.
13.1と13.2
- シンボルの定義からのコンパイルされた関数の指定にDownValuesFunctionが使われるようになった.
- Juliaデータ型の変換が変更された.Juliaの設定はExternalEvaluate["Julia",...]が動作するように更新する必要がある.更新された設定はワークフローの「ExternalEvaluate用にJuliaを設定する」で見ることができる.
- Quantityの操作で,"DegreesCelsius"等の単位を持つ温度と"DegreesCelsiusDifference"等の単位を持つ温度差を系統的に区別するようになった.これまで曖昧だった操作については,結果が変わる可能性があるという警告メッセージが出されるようになった.
- FindEquationalProofによって構築される証明関数の評価が成功した場合,Trueの代りにSuccessが与えられるようになった.
- ExpressionTreeおよびTreeExpressionの第2引数の"JSON"構造が,曖昧さを除去するように更新された.リスト値を持つ鍵の子ノードがラベルのない中間ノードの子ノードとして表されるようになった.
- $IterationLimitや$RecursionLimit等の大域的極限を超える式が,Holdでラップされたもとの式を返そうと試みる代りにTerminatedEvaluation式を返すようになった.
- FieldSizeがActionMenuのオプションではなくなった.
13.0と13.1
- f@@@x がApply[f,x,{1}]の代りにMapApply[f,x]と解釈されるようになった.評価されない式を扱うコードやレガシーバージョンで使われるようにエキスポートされるコードは,この差を説明する必要がある.
- クラスタリング族(FindClusters,ClusterClassify,ClusteringComponents)が,データは厳密に n 個のクラスタに分割しなければならないということを表すシンタックス f[data,n]を扱うようになった.n を上限として扱う以前の動作が使いたい場合は f[data,UpTo[n]]を使う.
- ExpressionTreeおよびTreeExpressionの第二引数の構造が再編成された.これには以前使われていたものの代りにHeadsオプションが加わったことも含む."Subexpressions"および"Atoms"の以前の動作が使いたい場合はHeads Trueを使う.保護される構造もHoldFormではなくHoldCompleteの部分式を囲むようになった.
- TreeExtract[tree, {All, 1}]等の1つのレベルにおける複数の部分木を抽出する指定で,Extractと一貫したそのレベルのデータが保持されるようになった.
- TreeFold[f,tree]がTreeFold[ {f,#&},tree]を与えるようになった.以前の動作を使う場合はTreeFold[{f,f[#,{}]&},tree]を使う.
- x と x[]の差分に従って,木操作の関数の中にはTree[data,None]とTree[data,{}]を区別するものもある.
- 経路ツアー指定のシンタックスの代りに,TourVideoの関数のサンプリングが使われるようになった.
- ConcaveHullMeshが次元 d(d は点の埋込み次元)のセルを選ぶようになった.
- CellDingbatが見出し記号をコンテンツに対して置かなくなり,CellFrameの左端に対して置くようになった.見出し記号の位置をシフトするためのCellFrameMarginsオプションに直接依存する代りに,新しいCellDingbatMarginを使う(その値を負して見出し記号を近付けたりフレーム内に入れたりすることを含む).
- 以下の形式についての"ColorSpace"インポート要素が13.1で以下のように変更された: GeoTIFF GrayLevel -> Grayscale GIF RGBColor -> RGB HEIF RGBColor -> RGB JPEG RGBColor -> RGB OpenEXR RGBColor -> RGB PNG RGBColor -> RGB TIFF RGBColor -> RGB WebP RGBColor -> RGB
12.3と13.0
- ノートブックが12.2以前のフロントエンドで開かれていると,13.0のカーネルで評価され保存された色のデフォルトタイプセットが適切に表示されない.
- ノートブックおよび環境設定ファイルがAssociationのシンタックスではなく< >のシンタックスを使って連想を保存するようになった.10.0以前のノートブックではシンタックスエラーとされる.デフォルトでは,以前のフロントエンドも新しいフロントエンドも自動的に管理された$UserBaseDirectory/FrontEnd/init.m の環境設定ファイルを使うため,このようなフロントエンドを13.0と同じシステムで実行することが難しくなる.これが問題となる場合は,CurrentValue[$FrontEnd, VersionedPreferences]=Trueを評価してバージョンを特定した環境設定ファイルを使うように強制することができる.
- GeoGraphics[]が局所的な地図ではなく世界の地図を生成するようになった.以前の動作はGeoGraphics[Here]で取得できる.
- TreeSelectの"TraversalOrder"オプションの代りに,前の値をサポートする新しい"TreeTraversalOrder"オプションが使われるようになった.デフォルトは"PostOrder"からAutomaticに変更されたが,機能的には同等である.
- TreeMap[f, tree, levelspec "Tree"]が使われなくなった.TreeMap[f, tree, {0, Infinity} "Tree"]の以前の動作はTreeMap[f, tree, {0, Infinity} "OriginalSubtree"]で取得できる.
- TreeDataとTreeChildrenでは,オプショナルの第2引数を取らなくなった.TreeExtract[tree, pos, TreeData]を使うとTreeDataの以前の動作が取得できる.TreeChildrenについても同様である.
- SparseArrayの内部構造が変更された.これはパターンマッチのための未加工オブジェクトとして扱われるようになった.
- より正確にするために,AbsoluteOptionsが再実装された.特定のオプションに対して返される形式は異なる可能性がある.
- GenerateSymmetricKeyメソッドのサブオプション"InitializationVector","BlockMode"の代りに,Encryptメソッドの同等のサブオプションが使われるようになった.
- 試験的オプションFrameFittingの名前がConformationMethodに変更された.このオプションはVideoTranscode,VideoJoin,VideoInsert,VideoReplaceの関数で使える.
- CloudExpressionがAssociationの線形指標付けをサポートしなくなった.
- LinuxでのバンドルされたRLinkのRインストレーションのサポートが打ち切られた.
- ある粒度でのDateObjectのFullFormが,暦または時刻帯のデフォルト値を明示的には含まなくなった.
12.2と12.3
- RemoteKernelObjectのカーネルオブジェクトの定義に,これまでとは異なる新しい方法が使われるようになった.
- MetafileおよびEnhanced MetafileがWindowsでサポートされなくなった.
- PIDDataの代りにSystemsModelControllerDataが使われるようになった.
- EstimatorRegulatorおよびLQGRegulatorが,入力がすべての決定論的入力からなり,制御された系の出力を測定するコントローラを返すようになった.メソッドに"EstimatorRegulatorFeedbackModel"を指定すると,以前の動作を復元することができる.
- NotebookObjectおよびCellObjectが特定のFrontEndObjectの値の代りにUUID文字列を使うようになった.これらのオブジェクトを使うどのようなコードも影響を受けない.
- 循環的な指定を含むDatasetのヘッダオプション(HeaderSize,HeaderStyle等)がラベル付きの最初の列から始まるようになった.以前はラベルのないコーナーヘッダが最初の指標であった.
- Import[file.stx,"LabeledData"]がNumericArrayオブジェクトを含む連想を返すようになった.インポートの際に要素として"LabeledDataLegacy"を指定すると,以前の動作にアクセスすることができる.
- Manipulate,FullDefinition,および関連関数がSystemコンテキストやその他の組込みコンテキストからの定義を自動的に引き入れなくなった.どのコンテキストを保存するかをカスタマイズするためにはExcludedContextsおよびIncludedContextsを使う.
- ExternalEvaluateコマンドが失敗した場合に,$Failedではなく,追加情報を含むFailureオブジェクトを返すようになった.
- GenerateSymmetricKeyでEncryptと同じMethodサブオプションが使われるようになった.メソッドサブオプションの"InitializeVector"および"BlockMode"は非推奨となっている.
- OverwriteTarget→TrueをRenameDirectoryで使うことで,ディレクトリ名を既存のファイルに変更する(Windows)か,ディレクトリ名を既存の空のディレクトリ名に変更する(Unix)かのどちらかが実行できるようになった.以前はこの操作はエラーとなっていた.
- Moleculeの特性"InChI"および"InChIKey"が文字列の代りにExternalIdentifierオブジェクトを返すようになった.文字列を取り出すためにExternalIdentifierで"ExternalID"特性を使うと,以前の動作が復元できる.
- Exportでバージョン4ではなく5.0または7.3の"MAT"ファイルが生成されるようになった.
- "Image"または"ImageSize"を除く,ほとんどの"OpenEXR"要素のインポートによって連想が返されるようになった.以前はリストが返されていた.
- AnimationDirectionがAnimatedImageおよび動画形式から除かれた.
- FindPeaksがPadding→"Reversed"の代りにPadding→"Reflected"を使うようになった.これは,入力領域外の峰を避けるために変更された.
- HeaderDisplayFunctionおよびItemDisplayFunction等のように,値として関数 f が取れるDatasetオプションで,関数の形式が f[elem,position,data]であることが必要になった.以前は第3引数は,それが含むデータではなく,問題のデータ集合である必要があった.
- AttachCell[obj,expr,post,dist]内で dist としてOffsetを使うことが,関数Offsetの一般的な使用方法と一貫性を持つように変更された.つまり,Offset[{dx,dy}d]の dx,dy は絶対変位として解釈されるようになった.
- DashingおよびAbsoluteDashingのデフォルト指定で,他に指定されていない限りCapForm["Butt"]が使われるようになった.
12.1と12.2
- ValueQの設計が見直され,定義が使われているかどうかにかかわらず,その定義の存在をテストするようになった.メソッドとして"Legacy"を指定すると,以前の動作にすることができる.
- 下付き文字のキーボードショートカットが + + , になった.以前のショートカット( + + 4)はTEXアシスタントになっている.
- ヤコビアンに対するNDSolveの疎性指定が変更された.詳細は有限要素プログラミングを参照されたい.
- CUDAを使ったGPU計算がmacOSでサポートされなくなった.
- Import[file,"PDF"]のデフォルト要素がGraphicsからImageに変更された.インポートの際に"PageGraphics"を指定すると以前の動作にアクセスできる.
- Import[file,"MP4"]およびImport[file,"Ogg"]が,動画トラックが存在するかどうかによってAudioまたはVideo要素を使うようになった.
- Import[file,"3DS"]のデフォルト要素がGraphics3DからMeshRegionに変更された.インポートの際に"Graphics3D"を指定すると以前の動作にアクセスできる.
- VideoTrimがすべてのトラックをトリムするようになった.VideoTracks,AudioTracks, SubtitleTracks等のオプションは使われなくなった.
- 実験的関数VideoTimeSeriesの代りにVideoMapTimeSeriesが使われるようになった.
- VideoFrameListおよびVideoExtractFramesが最初のトラックから抽出するようになった.VideoTracksオプションは使われなくなった.
- SpeechSynthesizeで保存の場所を設定するのに,Methodの代りにGeneratedAssetLocationが使われるようになった.
- MoleculeオブジェクトのAtomQがTrueを返すようになった.
- AtomList,AtomCount,BondList,BondCount,MoleculeValueが,オプションIncludeHydrogensのデフォルト値としてAllを使うようになった.オプション値として"ExplicitOnly"を指定すると,以前の動作にアクセスすることができる.
- Graphicsオブジェクトが1以外のImageSizeMultipliersの値を持つ場合,ノートブックウィンドウの幅を変更してもImageSize→Automaticは自動的にオブジェクトのサイズを変更しない.
- ファイルcommons-collections-3.1.jarがDatabaseLink`に含まれなくなった.
12.0と12.1
- QuantityArrayおよびSymmetrizedArrayではStructuredArrayオブジェクトが返されなくなった.
- Graphics3Dおよびその導出関数でControllerLinkingのデフォルト値としてFalseが使われるようになった.
- ControllerMethodがGraphics3Dおよびその導出関数のオプションから除去され,Manipulateおよびその導出関数のデフォルト指定としてControllerMethod→Noneが使われるようになった.
- VectorPlotのオプションVectorScaling,VectorAspectRatio,VectorSizesがあるため,VectorScaleは使われなくなった.
- カスタムのGraphプロパティのPropertiesオプションの代りにAnnotationRulesが使われるようになり,PropertyValueの代りにAnnotationValueが使われるようになった.
- GraphStore`IRIの代りにURLが使われるようになった.
- 実験的関数Curryの代りにCurryAppliedおよびOperatorAppliedが使われるようになった.
- "PacletManager`"コンテキストの関数のほとんどが"System`"コンテキストに移り,完全に文書化され,"PacletManager`"コンテキストは$ContextPath上に存在しなくなった.
- "Ogg"が動画形式となり,以前登録された音声形式の名前が"OggVorbis"に変更された.
- "QuickTime"および"AVI"ファイル がフレームインデックスのリストではなくVideoオブジェクトとしてインポートされるようになった.
- ImageFileApplyおよびImageFileFilterが,結果を現在の作業ディレクトリではなくデフォルトで$WolframDocumentsDirectory/Imageに保存するようになった.
- AudioCapture,AudioRecord,SpeechSynthesizeが,結果を$UserDocumentsDirectoryではなくデフォルトで$WolframDocumentsDirectory/Audioに保存するようになった.
- シンボルSpliceの定義が新しくなった.以前の機能はFileTemplateで利用できる.
- Graphics3DにおけるSphericalRegionのデフォルト値がFalseではなくAutomaticになった.
- "SMILES"文字列から構築されたMoleculeオブジェクトが,入力に明示的に含まれる水素原子だけを明示的に含むようになった.
- Graph3DでMethodのサブオプション"ShrinkWrap"がFalseではなくTrueに設定された.
11.3と12.0
- FinancialDataがデフォルトでQuantityオブジェクトおよびTimeSeriesオブジェクトを返すようになった.メソッドに"Legacy"を指定すると,以前の動作が復元できる.
- Tetrahedron[]が自動評価さrなくなり,正四面体を与えるようになった.
- "Faces"特性のあるPolyhedronDataが面のGraphicsComplex表現を返すようになった.これはGraphics3Dを使った可視化に適している.
- GraphPlot,GraphPlot3D,LayeredGraphPlot,TreePlotの新しいデフォルトのプロットテーマが加わった.
- < - >の演算子優先順位が (\[ TwoWayRule])の優先順位と合致するよう変更された.
- "CSV"および"TSV"がデフォルトで完全な配列をエキスポートするようになった.オプション"FillRows"にFalseを指定すると,以前の動作が復元できる.
- "FITS"ファイルタイプをインポートすると単独のデータセットファイルでも複数のデータセットファイルでもデフォルトでAssociationを返すようになった.
- デフォルトの型としてImageが"Real64"から"Real32"になった.
- Totalが任意のHeadを持つ式では動作しなくなった.
- SkinStyleの名前がAnatomySkinStyleに,AnatomyFormの名前がAnatomyStylingに変更された.
- "MXNet"でインポートオプションの"RawArrayAssociation"および"RawArrayList"が使えなくなった.
- GraphPlot,GraphPlot3D,LayeredGraphPlot,TreePlotのシンタックスが変更された.以前のシンタックスで指定されていたオプションは使えなくなった.
- EdgeLabeling,EdgeRenderingFunction,Method,PackingMethod,VertexCoordinateRules,VertexLabeling,VertexRenderingFunctionのGraphPlotに対するオプションが使えなくなった.
- CompanyDataの"TotalFunding"特性が使えなくなり,"Revenue"特性の名前が"TotalRevenue"に変更された.
11.2と11.3
- 機械精度数の数値計算で,アンダーフローの場合に自動的に任意精度数に切り替えられなくなった."CatchMachineUnderflow"システムオプションが削除された.
- FindFacesの入力基準およびシンタックスが変わり,Rectangleオブジェクトを返すようになった.
11.1と11.2
- RasterizeがデフォルトでImageを返すようになった.
- TwoWayRule ()がGraph以外のシンボルで,UndirectedEdgeの代りに\[ TwoWayRule]として解析されるようになった.
- ScheduledTaskObjectの代りにTaskObjectが,CreateScheduledTaskの代りにSessionSubmitが使われるようになった.
11.0と11.1
- Graphicsプリミティブが,位置指定の深さに関してより厳密になった.
- 550個を超える新関数が加わった.
- MovingMapのシンタックスが変更された.
- 入力セルと出力セルのデフォルトのフォントがMacではSource Code Pro,WindowsではConsolas,LinuxではBitstream Vera Sans Monoに変更された.
- Spliceの代りにFileTemplateが使われるようになった.
- 700個の新関数が加わった.
- #xと#"x"が,それぞれ#1*xと#1*"x"の代りにSlot["x"]として解析されるようになった.
- Dispatchオブジェクトが原子型になった.
- DateDifferenceがRealの代りにQuantity式を返すようになった.
- GeoDistanceおよびGeoDirectionがQuantity式を返すようになった.
- WeatherDataがQuantity式を返すようになった.
- クリンゴン文字のサポートが終了した.
- NSolveが重複を表すために,同じ解を数回返すようになった.
- Combinatoricaパッケージの機能のほとんどがWolframシステムに組み込まれている.
- デフォルトのPlotスタイルが新しい色で更新されている.
- Imageオブジェクトが原子型になった.
- Solveが逆数の特定の枝1つだけではなくConditionalExpressionオブジェクトを返すようになった.
- Legend機能が見直された.
- Permuteの順序が,標準的な順序にならうように変更された.
- 500個の新関数が加わった.
- 文字列のハッシュを計算する際,Hashに引用符が含まれないようになった.
- 400を超える全く新しい組込みオブジェクトが加わった.その名前の中には,すでに使用されている名前に抵触するものもある可能性がある.
- ラスター画像形式では,Import[file]でGraphics[Raster[…]]の代りにImage[…]が返され,新しい画像処理機能が利用できるようになった.file をGraphics式としてインポートするためにはImport[file,"Graphics"]を使う.
- より正確な式構造を得るため,Import[file,"XML"]およびExport[file,"XML"]は常に記号的XML式だけをインポート・エキスポートするようになった.Import["file.xml"]ではMathematica 6のように,自動的にXML形式を決定する.
- より広範なインタラクティブコントロールを実現するため,オプションActionDelayの名前がTooltipDelayに変更された.使用法には変更はない.
- 800を超える全く新しい組込みオブジェクトが加わった.その名前の中には,すでに使用されているものに抵触するものもある可能性がある.
- GraphicsオブジェクトあるいはGraphics3Dオブジェクトの出力形式が,⁃Graphics⁃のような出力ではなく描画されたグラフィックスになった.
- グラフィックス機能は大きく変更された.互換性のためには,<<Version5`Graphics`を使いMathematica 5のグラフィックス機能を復元する.Mathematica 6のグラフィックス機能に戻すには,<<Version6`Graphics`を使う.
- $DisplayFunctionがIdentityに設定されたため,グラフィックスを評価するときにデフォルトでは二次的出力が出なくなった.バージョン5の出力のような二次的出力が生成したい場合は,Printを使ってグラフィックスを出力することができる.
- グラフィックスのデフォルトフォントがCourierからTimesに変更された.
- GraphicsArrayがGraphicsGridとGridに置き換えられた.
- GraphicsとParametricPlotのAspectRatioのデフォルト値がAutomaticになった.
- PlotのオプションのPlotDivisionが,MaxRecursionに置き換えられた.
- ListPlotのPlotJoinedオプションがListLinePlotに置き換えられた.
- Plot3D[{f,s},{x,xmin,xmax},{y,ymin,ymax}]:陰影付け指定 s がMeshShadingに置き換えられた.
- オプションHiddenSurface->FalseがPlotStyle->FaceForm[ ]に置き換えられた.
- ContourGraphicsがListContourPlotとGraphicsComplexに置き換えれらた.
- DensityGraphicsがListDensityPlotとGraphicsComplexに置き換えられた.
- Plot3Dおよびその他の3Dプロット関数がPolygonプリミティブのリストではなくGraphicsComplexを出力するようになった.
- ListPlotが点のリストを1つのPointプリミティブにまとめるようになった.
- MeshRangeオプションがDataRangeに置き換えられた.
- DensityPlotとListDensityPlotがデフォルトでメッシュを描かなくなった.
- ListPlot3D[array,shades]がMeshShadingで置き換えられた.
- 3DグラフィックスのSurfaceColorが,明示的な色指定および指示子Specularity,Glowで置き換えられた.
- Lightingが,スポットライト,ポイント光源,指向性照明,アンビエント照明を含む異なる光源を指定するシンタックスをサポートするようになった.
- グラフィックスプリミティブのPostScriptがサポートされなくなった.
- オプションRenderAllとPolygonIntersectionsがサポートされなくなった.
- Rectangle[{xmin,ymin},{xmax,ymax},graphics]がInsetに置き換えられた.
- StyleFormとStylePrintがStyleに置き換えられた.
- TextStyleは,一般的なBaseStyleのメカニズムに置き換えられた.
- SequenceFormはRowに置き換えられた.
- 44個の全く新しい組込みオブジェクトが加えられた.この中には名前がすでに使用されているものと競合するものもある.
- PrecisionとAccuracyが桁数の推定整数値だけでなく,数の不確定性の厳密な尺度も返すようになった.
- Precisionが機械数については数値$MachinePrecisionではなくシンボルMachinePrecisionを返すようになった.
- N[expr,MachinePrecision]が機械数の数値評価に使われるようになった.N[expr,$MachinePrecision]は任意精度数を生成する.
- ConstrainedMinとConstrainedMaxがMinimize,Maximize,NMinimize,NMaximizeに置き換えられた.
- SingularValuesはSingularValueListとSingularValueDecompositionに置き換えられた.SingularValueDecompositionは以前とは異なったより完全な定義を使う.
- LUBackSubstitutionが,より一般的なLinearSolveFunctionの使用に置き換えられた.
- FindRoot[f,{x,{x0,x1}}]が値のペアではなく x の初期ベクトルの指定に使われるようになった.FindMinimumも同様である.
- DSolveConstantsがより一般的なオプションGeneratedParametersに置き換えられた.
- TensorRankがArrayDepthに置き換えられた.
- $TopDirectoryが$InstallationDirectoryと$BaseDirectoryに置き換えられた.
- 異なるコンピュータシステムに接続する際のWolfram Symbolic Transfer Protocol (WSTP) LinkProtocolオプションのデフォルト設定が"TCP"ではなく"TCPIP"になった.
- 61個の組込みオブジェクトが新たに追加された.すでに使用されている名前と競合するものもある.
- N[0]は,厳密なゼロではなく,機械精度のゼロを返す.
- FullOptionsは,Optionsと同じ形式の結果を返すAbsoluteOptionsに置き換えられた.
- Element[x,y]またはx∈yは,組込み評価規則を有する.
- 記号IおよびEがStandardFormで,それぞれ (\[ImaginaryI]), (\[ExponentialE])と出力されるようになった.
- CompiledFunctionに新規に2番目の引数が新規に追加され,コンパイルされた関数の処理と作成が容易になった.
- 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の代りに,8進コードを使用する必要がある.
- Mathematicaノートブック環境で,デフォルトで特殊文字を使用して出力されるMathematica組込み関数がいくつかある.例:x->y は,StandardFormで xy と出力される.
- 定積分はより洗練され,オプションでGenerateConditions->Falseを指定しない限り,条件別の積分結果をIf式で出力する.
- HeldPart[expr,i,j,…]は,Extract[expr,{i,j,…},Hold]に置き換えられた.
- Literal[pattern]は,HoldPattern[pattern]に置き換えられた.Verbatim[pattern]が新たに導入された.DownValuesに代表される関数は,結果をLiteralではなくHoldPatternで包んで返す.
- 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,{g2,g3}]は,g2および g3をリストとして引数に取る.
- $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とTextStyleに置き換えられた.
- 260個の組込みオブジェクトが新たに追加された.名前がすでに使用されているものと競合するものもある.
- Accumulateは,FoldListに置き換えられ,Foldが追加された.
- Condition(/;)は,完全な規則と同様に個別のパターンでも使用可能となり,デフォルトでは評価は実行されない.
- Releaseの機能は,EvaluateとReleaseHoldとに分割された.
- Composeは,Compositionに置き換えられた.
- Debugは,Traceおよび関連する関数に置き換えられた.
- Powerは,もはやSqrt[x^2]x のような変換は自動的には実行しない.
- Limitは,デフォルトでは未知の関数に対して評価を実行しない.
- Modは数値だけを処理し,PolynomialModは多項式を処理する.
- CellArrayは,RasterおよびRasterArrayに置き換えられた.
- FontFormのフォント指定形式はわすかに異なる.
- Framedは,Frameおよび関連する関数に置き換えられた.
- ContourLevelsおよびContourSpacingは,Contoursに置き換えられた.
- Plot3Matrix は,ViewCenterおよびViewVerticalに置き換えられた.
- FromASCIIおよびToASCIIは,それぞれFromCharacterCodeとToCharacterCodeに置き換えられた.
- Aliasは,$PreReadに置き換えられた.
- ResetMediumは,SetOptionsに抱合され,$$MediaはStreamsに置き換えられた.
- StartProcessは,InstallおよびWSTPに置き換えられた.