Summary of New Features in 6.0

Wolfram System 6.0 fundamentally redefined the Wolfram System and introduced a major new paradigm for computation. Building on the Wolfram System's time-tested core symbolic architecture, Version 6.0 added nearly a thousand new functionsalmost doubling the total number of functions in the systemdramatically increasing both the breadth and depth of the Wolfram System's capabilities, as well as introducing hundreds of major original algorithms, and perhaps a thousand new ideas, large and small.

Core Language

open all close all

List & Expression Manipulation

New general ;; (Span) notation for sequences of parts, blocks, etc.

Band construct to specify arbitrarily banded multidimensional arrays.

ReplacePart extended to general index rules, with patterns.

ArrayFlatten for generalized block array flattening.

Flatten extended to handle flattening disjoint levels.

Join generalized to join arrays at any level.

Reverse generalized to reverse at any level.

PadLeft, PadRight generalized to automatically form full arrays.

SortBy for sorting by values of a function applied to list elements.

New Tally function to tally identical elements and multiplicities.

BinCounts, BinLists to count and list elements that lie in value bins.

Accumulate, Differences for successive sums and differences in lists.

Commonest to find most frequent elements in lists.

Riffle to interleave elements in lists.

RandomChoice, RandomSample for random subsets of lists.

Much faster ListConvolve, ListCorrelate for integer lists.

Optimizations in Outer, Tuples, and Transpose.

Language Constructs

Longest, Shortest for enhanced pattern-matching control.

Support for matching general pattern subsequences. >>

Repeated (..) generalized to constrain the number of repeats.

General iterator support for iteration over lists in Table, Do, etc.

LengthWhile, TakeWhile for list-oriented functional programming.

Quiet for convenient message control.

Programming & Development

Full-featured source-level debugger, including breakpoints, watchpoints, and stepping. >>

Monitor for real-time symbolic monitoring of running programs.

PrintTemporary for temporary printing during a computation.

New symbolic options management system for functions. >>

User-defined syntax coloring for any function. >>

Direct support for enhanced editing of .m package files. >>

Access to over a hundred system-level customizations. >>

Input, InputString restyled based on symbolic interface elements.

Symbol name discovery extended to regular expressions. >>

String-Related Functions

Efficient nearest-neighbor finding for strings. >>

Built-in dictionary lookup for words. >>

Edit and other distance measures for strings. >>

Built-in hash code function with multiple schemes. >>

Built-in support for string patterns representing dates. >>

StringTake generalized to allow multiple substrings.

Faster ToCharacterCode, FromCharacterCode for long strings.

Other Functions

IntegerString for base and Roman numeral number forms.

FromDigits extended to handle strings and Roman numerals.

TreeForm enhanced to use graphical output.

Extensive new date manipulation functions. >>

Dynamic Interactivity

Interactive Manipulation

Manipulate as a universal dynamic interface for arbitrary objects.

Immediate connection of variables to 20+ control types.

Support for arbitrary numbers of variables connected to controls. >>

Support for general control layout, labeling, alignment, etc. >>

Support for in-image arbitrary locator controls. >>

Automatic mapping to gamepads and other HID controls. >>

Autorun and bookmarking capabilities.

Support for automatic encapsulation of imported functions. >>

Export to Flash and other web formats. >>

Viewers & Annotations

TabView, SlideView, MenuView, FlipView, PopupView, OpenerView viewers.

Support for arbitrary content and labeling in all viewers, with dynamic sizing. >>

Tooltip, Mouseover, PopupMenu, PopupWindow with arbitrary textual or graphical content.

Support for attaching tooltips etc. to arbitrary expressions, graphics elements, etc. >>

MouseAnnotation for associating expressions with arbitrary annotation elements.

Panel and Pane for arbitrary wrapping of text and other content.

Animate, ListAnimate for self-paced running animation.

StatusArea, ProgressIndicator, Monitor for monitoring computations.

Symbolic Controls

Seamless integration of active controls with graphics, layout, and typesetting. >>

Support for Slider and VerticalSlider with continuous, discrete, or symbolic range.

Modifier-key-based support for multiple-level fine slider control. >>

Support for general 2D slider controls. >>

PopupMenu allowing arbitrary expressions or graphics.

Checkbox, RadioButton, Toggler, Opener state controls.

ColorSlider, ColorSetter for interactive color choosing.

Setter control for setting arbitrary values.

SetterBar, RadioButtonBar, CheckboxBar, and other composite controls.

Trigger control for events that continuously change when triggered.

General InputField control, allowing string, expression, etc. input.

General Locator object, with automatic replication capability.

LocatorPane providing immediate movable locators in graphics etc.

Animator, Manipulator animation and manipulation controls.

Symbolic Button object allowing arbitrary appearance and arbitrary action.

ActionMenu allowing arbitrary function execution.

ClickPane providing image-map coordinates.

PaneSelector to display one of several objects based on a dynamic value.

Appearance option for system and generic appearances of controls.

Support for specification of control sizes and other properties. >>

AutoAction and ContinuousAction for tuning operations of controls.

Support for platform-neutral rendering of all controls, including printing. >>

Time-based Clock, Refresh controls.

Delimiter for visual separation in controls layout.

Dynamic Interactivity Language

General Dynamic construct for representing continually updated dynamic expressions.

Support for arbitrary tracking and action functions in Dynamic. >>

DynamicModule scoping construct for interface-localized values and variables.

Dynamic access to interface properties. >>

Convenient access to mouse position information. >>

ControlActive to allow preview modes when controls are active.

Mechanism to synchronize initialization and updating of dynamic variables. >>

Interface Construction System

Fully serializable interface, completely described in the Wolfram Language.

Seamless integration of active controls with scrolling documents, graphics, etc.

Instant universal interface using Manipulate.

Support for multiple interface paradigms, including dialog boxes, toolbars, click panes, etc. >>

Arbitrary programmable and dynamic control arrangement. >>

Convenient immediate support of gamepads and other HID devices. >>

Arbitrary interface building within scrollable notebook documents.

DockedCells to create a custom toolbar inside a notebook.

PasteButton, Hyperlink for most common types of buttons.

CreateDialog, DialogNotebook to construct a dialog with arbitrary controls.

CreatePalette, PaletteNotebook to create and manipulate custom palettes.

Many standard and customizable types of dialogs. >>

FileNameSetter, ColorSetter controls to bring up system dialogs.

Programmatic interface to system dialogs for files, colors, sound recording, etc. >>

Symbolic EventHandler supporting 30+ types of low-level events.

NotebookEventActions etc. to specify low-level event handlers.

Deploy to create noneditable interfaces.

Interpretation for creation of evaluatable template-based interfaces.

Setting, DynamicSetting to obtain values of dynamic controls.

Mathematics and Algorithms

Mathematical Functions

Round, Floor, Ceiling generalized to allow "round to nearest n", etc.

Spherical Bessel, Hankel, and Kelvin functions added. >>

Whittaker and parabolic cylinder functions added. >>

Full coverage of spheroidal functions added. >>

Bessel and Airy zeros functions added. >>

Riemann zeta function zeros function added. >>

Sinc and HeavisideTheta functions added.

Unitize convenience function added.

Zernike polynomials added. >>

Siegel theta function added. >>

PolyGamma generalized to arbitrary complex order.

Thousands of new rules added for generalized hypergeometric functions.

Integer Functions

Greatly enhanced arbitrary-length integer arithmetic on 64-bit systems.

Subfactorial, CatalanNumber, and LucasL added.

Bell and Nörlund (generalized Bernoulli) polynomials added. >>

Divisible, CoprimeQ, and QuotientRemainder added.

ChineseRemainder function added.

KroneckerSymbol added.

PrimitiveRoot added.

PowerModList added.

NextPrime and RandomPrime.

PrimePowerQ and SquareFreeQ tests for integers.

FactorInteger extended to allow partial factorization.

IntegerLength to find number of digits in a number.

Bitwise functions for arbitrary-length integers added. >>

HermiteDecomposition for Hermite normal forms of integer matrices.

Number Theory

21 functions for algebraic number theory and algebraic number fields added. >>

RootApproximant added to find algebraic number approximants.

Convergents to find successive continued fraction convergents.

Ramanujan tau functions added. >>

General support added for integer partitions. >>

Functions for representations of numbers as sums of powers. >>

Functions for solving and testing Frobenius equations. >>

Faster Prime and primes-related functions.

RootIntervals, IsolatingInterval for root isolation.

Symbolic Computation

FullSimplify extended to allow automated theorem proving with symbolic operators.

Improved original algorithm for solving large polynomial systems over the reals. >>

DSolve extended to symbolic solution of first-order initial value PDEs.

Traveling wave solutions for nonlinear PDEs. >>

RSolve extended to solve linear fractional systems of difference equations.

Solution of multistep linear difference equations of arbitrary order. >>

SeriesCoefficient extended to multivariate series and arbitrary expansion point.

Expand, Factor, Cancel, etc. automatically thread over equations etc.

PossibleZeroQ fast, heuristic test for zeros added.

Support for generation of symmetric polynomials, and symmetric reduction. >>

Polynomial discriminant function added. >>

PolynomialQuotientRemainder and PolynomialExtendedGCD added.

Square-free polynomial testing and decomposition. >>

GenericCylindricalDecomposition etc. for extended handling of solution sets. >>

Exact root counting and isolating intervals for polynomials. >>

Support for general Padé approximants. >>

Symbolic normalization and orthogonalization of families of functions. >>

Faster cylindrical algebraic decomposition methods.

Faster lexicographic and toric Gröbner bases.

HornerForm polynomial representation.

General Numerics

Support for constrained nonlinear local optimization. >>

Support for integer linear programming. >>

Major new algorithms for NIntegrate, with efficient high-dimensional integration.

Dense output continuous to the order used in NDSolve.

FourierDCT, FourierDST discrete transforms added.

New fast high-quality algorithms for random number generation. >>

RandomInteger, RandomReal, etc. generate arbitrary random arrays.

RandomChoice and RandomSample for weighted discrete random selection.

RealExponent added.

Exclusions to specify regions to exclude in integration etc.

ExampleData with immediate access to matrix, optimization, etc. test problems.

Matrices & Linear Algebra

Automatic use of multiple processors for core numerical linear algebra. >>

Symbolic specification for general banded matrices. >>

Tests for Hermitian and positive definite matrices. >>

MatrixRank extended to work with sparse arrays.

Diagonal to extract diagonal elements in a matrix.

SingularValueDecomposition extended for exact computation.

Support for solving general linear least squares problems in matrix form. >>

MatrixExp, MatrixPower extended for efficient application to vectors.

Normalization, orthogonalization, and projection of vectors. >>

VectorAngle, UnitVector, ConstantArray added.

Support for Hilbert, Hankel, and Toeplitz matrices. >>

KroneckerProduct added.

RotationMatrix and 8+ other geometric matrix transforms added. >>

MatrixPlot for visual representation of matrices.

Statistics & Data Analysis

Full symbolic & numeric computation of 20+ properties of 36 named statistical distributions. >>

14 new descriptive statistics functions added. >>

PDF, CDF, ExpectedValue functions for statistical distributions.

Nearest for finding nearest neighbors in multidimensional data.

FindClusters for general cluster analysis in numeric, Boolean, and string data.

18 distance and similarity measures added. >>

Built-in MovingAverage and other data-smoothing functions. >>

Extended support for multidimensional and vector-valued interpolation. >>

Support for unstructured data in InterpolatingPolynomial.

Discrete Mathematics & Computational Systems

Fully automated graph layout in 2D and 3D. >>

Layered graph and tree layout. >>

GraphData with 100+ properties of hundreds of named graphs.

FindShortestTour for traveling salesman problem.

PolyhedronData with 75+ properties of 145 named polyhedra.

LatticeData with properties of named lattices in d dimensions.

KnotData with 60+ properties of 250+ knots.

Permutations generalized to allow selecting any number of elements.

Support for symbolic rules, functional usage, and higher-order evolution in CellularAutomaton.

TuringMachine for general Turing machine evolution.

Visualization and Graphics

Graphics Infrastructure

Full integration of graphics, typesetting, and active controls.

Compelling graphics produced using computational aesthetics methodology.

Real-time 3D graphics rotation and zooming.

Support for graphical notation in input. >>

Arbitrary insetting of graphics, text, formulas, etc. within another graphic. >>

Full interactive drawing of 2D graphics, including text and formulas. >>

Fully editable 2D graphics using Graphics Inspector. >>

Extensive support for hardware acceleration of 3D graphics rendering on all platforms.

Seamless support for scrollable OpenGL and Direct3D graphics.

Full support for modern GDI+, Quartz, and Qt graphics layers.

Antialiased graphics on all platforms.

New antialiased fonts for Linux.

Automatic graphics compression in notebook files.

PerformanceGoal for general control of graphics quality or speed in animations.

Built-in large collection of color schemes for use in graphics, with color palette. >>

Transparency support in graphics and visualization. >>

Support for import and export of large number of graphics formats. >>

Graphics Language and Primitives

Extended and optimized graphics primitives. >>

Graphics, Graphics3D are fully integrated into input and output.

GraphicsComplex primitive supporting connected lines, polygonal surfaces, etc.

New Arrow primitive with fully-configurable arrows.

New Sphere, Cylinder primitives.

Circle, Disk now support scaled sizes.

Point, Line, Polygon enhanced to support multiple lines, points, etc.

Polygon supports smooth color gradients and shading.

New GraphicsGrid, GraphicsColumn, GraphicsRow for automatic layout of graphics.

GraphicsGroup for selection grouping of graphics objects.

Geometric Transformations

Full support for geometric transformations of graphics objects and primitives. >>

RotationMatrix, ShearingMatrix, ... for transformations in arbitrary dimensions.

RotationTransform, AffineTransform, ... symbolic geometric transformations.

Graphics Options and Directives

Directive for compound graphics directive.

Support for preset symbolic size specifications (e.g. Tiny).

Thick, Thin, Dashed, Dotted, etc. for line styles in graphics.

ColorData with extensive library of color schemes.

Blend for arbitrary color interpolation.

Lighter, Darker for color adjustment.

New Glow, Specularity graphics directives for surface properties.

Fully updated support for 3D lighting model, including point and spot light sources. >>

Support for FaceForm and EdgeForm in 2D graphics. >>

Detailed control of image size, margins, and padding. >>

ViewAngle, ViewVector, ViewRange, etc. for graphics scene setup.

Smooth shading for 2D and 3D polygon meshes and surfaces. >>

LabelStyle, TicksStyle, GridLinesStyle, ... styling options.

AlignmentPoint etc. for graphics alignment in flowing text.

Visualization Options and Directives

Arbitrary Filling support in 2D and 3D.

Automatic contour labels. >>

Support for built-in color functions, specularity, etc. in all visualization functions. >>

Full adaptive sampling with MaxRecursion for all function visualization.

ClippingStyle, ContourStyle, FillingStyle, ... styling options.

VertexColors, VertexNormals for smooth interpolation of surface color and lighting.

Graphics Annotation

Annotation for arbitrary object annotation.

Tooltip to display an arbitrary tooltip for any object.

Mouseover, MouseAnnotation for mouse-sensitive annotation.

StatusArea for annotation in the window status area.

PopupWindow to display a separate window.

Visualization Framework

Plotting over regions specified by arbitrary constraints. >>

Exclusions mechanism to exclude discontinuities etc. >>

Fully general mesh overlay capability for all regions and surfaces. >>

Adaptive sampling in all 2D and 3D function visualization functions.

Unstructured data in all 2D and 3D data visualization functions.

Support for symbolic or missing data in 2D and 3D visualization functions.

Efficient support for plotting large-scale sparse arrays.

Enhanced support for InterpolationOrder, including multidimensional data.

Support for stepped 2D plots and Voronoi-based 3D plots. >>

2D Visualization

Enhanced Plot with support for filling, adaptive sampling, exclusions, mesh overlays, etc.

New ParametricPlot with support for 2D parametric region, adaptivity, meshes, etc.

ListPlot, ListLinePlot with support for multiple datasets, data markers, and fill styles.

DateListPlot for general plotting of time- and date-based data.

New ListLogPlot, ListLogLogPlot, ListLogLinearPlot functions.

New LogPlot, LogLinearPlot, LogLogPlot functions.

New PolarPlot, ListPolarPlot functions.

PlotMarkers option for indication of data points in multiple datasets.

Joined option for joining styles of multiple datasets.

RegionPlot for visualizing regions described by combinations of inequalities.

ListDensityPlot, ListContourPlot support unstructured data, downsampling, smooth colors, region constraints, and mesh overlays.

DensityPlot, ContourPlot with adaptivity, smooth colors, region constraints.

Convenient support for equation-based contours in ContourPlot.

New ReliefPlot for cartographic and height-based data.

Enhanced ArrayPlot with more detailed data-range capabilities.

Fully integrated GraphPlot, LayeredGraphPlot, and TreePlot.

Support for sparse arrays and color-based data in Raster.

Rasterize to create a raster image from an arbitrary expression.

3D Visualization

ListPlot3D supports unstructured data, downsampling, region constraints, and mesh overlays.

Plot3D, ParametricPlot3D with full adaptive plotting, region constraints, and mesh overlays.

ContourPlot3D, ListContourPlot3D for 3D contour plotting.

RegionPlot3D for visualizing 3D regions described by combinations of inequalities.

ListSurfacePlot3D for 3D surface reconstruction from multivalued data.

ListPointPlot3D for 3D scatter plots.

Fully integrated RevolutionPlot3D and SphericalPlot3D.

New NormalsFunction option to specify effective normal vectors on a surface.

New GraphPlot3D for general graph layout in 3D.

Dynamic Visualization

Manipulate as an instant universal interface for dynamic visualization.

Animate, ListAnimate for function- and frame-based animation.

LocatorPane, ClickPane, etc. for mouse interaction with graphics. >>

Support for gamepads and other devices. >>

Sound

Note-based symbolic sound, with full MIDI-like support. >>

Support for arbitrary sound time-warping. >>

Support for a wide range of note-based instruments and percussion. >>

Support for combined output of note-based and sampled sound. >>

Spectrogram representation of sounds in output. >>

Built-in programmatic support for sound recording dialog. >>

Beep added. >>

Support for import and export of all standard audio formats. >>

Data Handling & Data Sources

Large Collections of Curated Data

GraphData, KnotData, PolyhedronData, etc. collections of mathematical objects. >>

CityData, CountryData for geographical, demographic, economic, etc. information.

FinancialData for current and historical securities data.

ParticleData, AstronomicalData collections.

ElementData, IsotopeData, ChemicalData collections of chemical and nuclear data.

Built-in extensive computable dictionary. >>

WordData with word properties and relations between words.

ExampleData collection of standard tests, 3D models, image and audio clips, etc.

Missing for symbolic representation of unavailable data.

Import & Export

Greatly enhanced Import and Export.

New "elements" framework allows handling of individual aspects of data files.

Greatly extended collection of supported formats. >>

Lines, Words, UnicodeText are incorporated as elements in universal text converter.

Efficient handling of table import.

15+ new formats for 3D geometry models (PLY, OFF, JVX, Maya, DXF, STL). >>

New image formats (PXR, TGA, SCT, JPEG200, EMF).

Support for EXIF metadata in JPEG and GIF.

New and enhanced handling of scientific and medical data formats. >>

Support for chemical, biological, and medical data formats (FASTA, EDF, PDB, MOL, XYZ).

Support for geospatial formats (USGSDEM, GTOPO30, CDED).

Enhanced support for SDTS format.

Archive and compression formats (ZIP, GZIP, TAR, BZIP2, UUE, Base64) added.

Import and export of directories of files.

Database and spreadsheet formats (MDB, ODS, SXC, DBF, DIF) supported.

Support for multimedia formats (SWF, QuickTime).

Audio formats (FLAC, MIDI, Wave64, ...) added.

Support for all common codecs for WAV, AU, AIFF, AVI, ....

Support for mathematical data formats (XPORT, MTP, MAT, Graph6, Sparse6).

Import and export of web and document formats (HTML, XHTML, PDF, RTF, ...).

Extraction of tabular data from document formats.

System and utility formats (Apache log files, MBOX, ACO, ICO, CUR, WDX). >>

Data Handling and Analysis

FindClusters, Nearest, ... for data classification.

BinCounts, Tally, Quantile, SortBy, ... for data mining. >>

FileFormat, StringFormat to infer formats of files and strings.

FileHash to calculate file hash values.

Compress, Uncompress for compressed ASCII-encoded representation of any object.

AutorunSequencing for automatic activation of dynamic controls in Export.

Rasterize for conversion to bitmap rasters.

Notebooks and Documents

General Interface Features

Seamless integration of graphics, active controls, and mathematical typesetting.

New Preferences dialog covering a wide range of options. >>

Menus rearranged for simplicity of use.

Integrated searching in help windows.

Support for multiple simultaneous help windows.

Restyled slide show creator.

Built-in template for The Wolfram Demonstrations Project.

Nearly 700 new detailed interface options and suboptions. >>

OutputSizeLimit to prevent unexpectedly large output.

200+ new symbolic notational operators. >>

Notebook Structure & Appearance

General reverse-closed cells allowing code hiding.

Support for arbitrary docked cells for notebook toolbars. >>

Support for manually definable cell groupings.

Support for notebook-unique and cell-unique namespaces. >>

Adaptive horizontal scrollbar.

Support for full-screen presentation mode. >>

Support for transparent windows. >>

Programmatic access to window status area. >>

Input & Output

Comprehensive real-time semantically driven syntax coloring.

Immediate visual feedback on function names and spelling.

Visual indication of function argument structures.

Automatic italicization of function variables.

Automatic variable scope indication.

User-definable syntax coloring. >>

Automatic blocking of digits in long input numbers.

Automatic × insertion for implied multiplication. >>

[ImplicitPlus] for entry of mixed fractions.

Improved font-aware spanning character rendering.

, , for creating matched pairs of brackets.

Formatting & Styling

Direct programmatic access to all styling, using Style.

Full support for style inheritance and cascading stylesheets.

Enhanced stylesheet editing mechanism.

Full support for spanning rows and columns in tables. >>

Direct support for Grid, Column, Row, and related constructs.

Extensive new table formatting options. >>

Symbolic Framed, Labeled, etc. constructs.

Bold, Italic, Underlined, etc. symbolic font settings. >>

LineSpacing enhanced to optimize inline graphics display.

Magnify for expression-based magnification.

Spacer, Invisible text formatting elements.

Workflow Enhancements

Integrated notebook-based editor for .m package files.

Cell change times tracking. >>

Graphical notebook history overview, with drill-down. >>

NotebookDirectory front end directory function.

$UserDocumentsDirectory for easy access to saved documents.

Easy programmatic access to cell grouping. >>

Evaluation Control

Notebook and cell-group localized evaluation contexts. >>

CellProlog, CellEpilog for cell evaluation.

Arbitrary style-settable evaluation function for any cell. >>

Arbitrary event handlers for notebooks, cells, and globally. >>

Settable automatic limiting of overly long output. >>

Interoperability

Automatic format recognition and conversion in Copy/Paste.

Automatic preservation of quotes, newlines, etc. in pasted strings.

for Copy As Plain Text. >>

Automatic import and export of GIF, TIFF, JPEG, PNG, SVG, PDF, ... images in notebooks. >>

Support for TEX/LATEX import, with paste auto-detection.

Automatic stripping of email annotations when pasting into the Wolfram System.

Extended support for localized filenames under Windows.

Document Programming

CreateDocument etc. for immediate creation of symbolic documents.

CreateWindow to display an arbitrary notebook expression.

TextCell, ExpressionCell, etc. for direct symbolic document representation.

Display of notebook expression objects within other notebooks. >>

Hyperlink for symbolic representation of hyperlinks.

Defer for creating a cell containing evaluatable input.

CellGroup for symbolic cell grouping in document generation.

Graphics in Notebooks

Interactive graphics scrollable in notebook.

Real-time 3D rotation anywhere in notebook.

Automatic resizing of graphics in text etc.

New Drawing Tools palette. >>

New Graphics Inspector palette. >>

Stylesheet control over graphics sizing and styling.

Platforms & Infrastructure

Support for Windows Vista.

QT-based window interface on Unix and Linux.

64-bit front end support on all platforms.

Security features for dynamic notebook evaluation.

Install menu for installing add-on components. >>

Modernized interface for standalone kernel under Windows.

Systems Interfaces & Deployment

Core System

Major new preemptive kernel mechanism to support dynamic interactivity.

SystemInformation system dashboard with 120+ dynamically reported properties.

SystemOptions access to 250+ settable low-level system options and suboptions.

$CharacterEncodings character encoding discovery interface.

$MachineDomains, $MachineAddresses for internet property discovery.

MemoryInUse extended to report front end process memory.

$SystemWordLength system parameter.

Updated mechanism to clear cached results of computations. >>

Files & Web Connectivity

Streamlined handling of all internet connectivity, including proxies etc.

Support for string patterns in file names. >>

New file interlock mechanism.

FileHash for fast file hashing.

CreateDirectory, OpenWrite, etc. automatically handle temporary files.

FilePrint for printing file contents directly in a notebook.

Connection Infrastructure

New shared memory WSTP protocol for Macintosh and Unix.

10× throughput increase for WSTP shared memory devices.

Shared dynamic WSTP libraries on all platforms.

Support for UTF-8, UTF-16, UTF-32 in WSTP.

APIs

Major modernization of WSTP C API. >>

Full support for installing and calling web services. >>

Device Connectivity

Auto-detect support for arbitrary HID systems. >>

ControllerPath for prioritizing devices.

Special controller mappings for standard gamepads and 3D devices. >>

Additional Components

Completely new documentation system, in-product and on-web.

Equivalent of 20,000+ pages of new documentation and tutorials.

35,000+ new examples of Wolfram System functionality.

300+ "guide page" concept maps of Wolfram System functionality.

2,000,000+ new cross-links between documentation elements.

In-product and on-web linguistic-aware search system.

Load-on-demand system with automatic documentation updating.

The Wolfram Demonstrations Project with 1000+ entries.

New Mathematica Player with dynamic content capabilities.

Copernic support in Wolfram Notebook Indexer (Windows only).

Automatic compatibility scanning of older Wolfram System notebooks.