74

Prelude The items in this post are not generally regressions; they are simply changes and enhancements that may break code or cause problems in moving from one version to another. The work-arounds are offered as specific solutions to instances of incompatibility, not as recommendations of general practice. For example, Plot Themes are a powerful tool one ...


45

Update: Yes, the Wolfram Language (and Mathematica) are now available free (for non-commercial use) on the Raspberry Pi. Details: http://www.raspberrypi.org/archives/5282 http://blog.stephenwolfram.com/2013/11/putting-the-wolfram-language-and-mathematica-on-every-raspberry-pi/ === We are working on a project related to Raspberry Pi at Wolfram Research. ...


45

This behaviour has changed since that book was published. I am writing this additional answer to make it clear how Mathematica 9 searches contexts for symbols and that even the current version 9 documentation is incorrect in describing this. How symbol lookup actually works When you enter a symbol name such as x, Mathematica will check if a symbol with ...


34

I can confirm that upgrading to Windows 10 from either Windows 7 or Windows 8.1 (you can't upgrade from Windows 8 directly, you first have to upgrade to 8.1) leaves all your settings and licenses intact and that includes your Mathematica (9, 10.0, 10.1, 10.2) installation, I didn't have version 8 installed but I would guess it should work too. I have also ...


31

data = WolframLanguageData[{"Select", "FileNames", "StringContainsQ", "Or", "StringJoin", "ToString"}, {"Name", "DateIntroduced", "DateLastModified", "VersionIntroduced", "VersionLastModified"}]; TableForm[data, TableHeadings -> {None, {"Name", "DateIntroduced", "DateLastModified", "VersionIntroduced", "VersionLastModified"}}] So ...


28

Version 11.2 features a completely rewritten documentation search system. This version is incompatible with the search indices created by previous versions, nor can previous versions read the new indices. And for reasons of performance, the new system will generally ignore the old indices. Internal packages have been rewritten to produce both types of ...


25

We can get old-style messages using Internal`$MessageMenu = False Needless to say, this is unsupported and undocumented functionality.


25

This is just a long comment trying to shed light on where the problem may be coming from. Since version 10.2, the following is valid syntax: Table[x, 5] Before we could only use Table[x, {5}] or Table[x, {i, 5}] This implies that we should expect the following to work too: n=5; Table[x, n] the same way as Table[x, {n}] or Table[x, {i, 1, n}] work ...


23

It appears that the last version of Mathematica to have official support for Windows 98 was Mathematica 5.2. We can see this by comparing archived versions of the system requirements pages for version 5 and version 6. Version 5 Version 6


22

I am not willing to make MaTeX compatible with Mathematica 9 for the simple reason that it would create too much of a maintenance burden, and I already don't have time to properly respond to all support requests. If anyone is willing to hack MaTeX to work with Mathematica 9, here's what needs to be done. The primary reason why Mathematica 10 is required is ...


21

The only reliable way seems to have a good set of unit test suites, and run them in earlier versions of Mathematica (I mention this here since the answer and comments mentioning this were deleted). However, having explicit rules for when functions were introduced and / or last changed, extracted from the docs, seems to me a good thing, which may help reduce ...


20

Update: Daniel Lichtblau authoritatively comments: This change was intentional, and per request of the boss. I can find no mention of this in the documentation, though I am still looking. My guess is that the old behavior was a common source of problems and someone's fix was to implement the new behavior in version 10.1.0. On the surface at least I ...


18

The straightforward way to discriminate is to use $LicenseType, (unfortunately undocumented and not even WolframLanguageData knows about it). Deploying the following line as a CDF file and opening it in various environments provides the following results (thanks for Oleksandr's comment): Dynamic@{$LicenseType, Developer`$ProtectedMode, CurrentValue["...


18

Not an answer. Just screen shot. I booted up version 2.2 to verify the book result. And it does verify: The same result we get with version 5.2: Something changed since the book was written (screenshot from version 9 follows):


18

I upgraded three machines from Windows 7 to Windows 10, two of which were work machines containing installations of Mathematica 10.x (and earlier). So far I have encountered zero issues related to Mathematica with this Windows upgrade. From a personal perspective, upgrading to Windows 10 was very simple. Also the QA team for Mathematica did a full test of ...


17

Unfortunately, there is no solution. Dump (.mx) files are explicitly documented as being non-portable between different versions, and even between different builds of the same version (e.g. 32- and 64-bit versions for a given platform, or those for two different platforms). As such, you must re-generate your .mx files for version 9 either from the original ...


17

The $over$ operator correctly implemented According to the Wikipedia, when composing $A$ $over$ $B$, the output alpha channel value $\alpha_O$ and the output color channel value $C_O$ are calculated as follows: $\begin{cases}\alpha_O = 1 - (1 - \alpha_A) (1 - \alpha_B) \\C_O = \frac{\alpha_A C_A + (1 - \alpha_A)\alpha_B C_B}{\alpha_O}, \text{if $\alpha_O ...


16

I believe that the difference is that the Hash in v7 was hashing the quotation marks around the string, but the Hash in v8 does not. For example, in M7: In[1]:= Hash["test", "MD5"] Out[1]= 64111166190477440563271147919838643147 and in M8: In[1]:= Hash["\"test\"", "MD5"] Out[1]= 64111166190477440563271147919838643147 Therefore, I'd say that the M8 hash ...


16

Mathematica is available for non-commercial use on the RPi now. No. Mathematica is not available for Linux on the ARM architecture; only for x86/x86-64. Even if it ran, performance wouldn't be very good, considering the Pi's weaker hardware. From the FAQ you linked to: Overall real world performance is something like a 300 MHz Pentium 2, only with much,...


16

I guess the reason for that has nothing to do with the "MD2" or "MD5" sum, which hasn't changed. The reason is that the input you are feeding has changed. To create a hash from an expression, Mathematica needs to convert the expression into a serialized form that can be hashed. Details Before we consider, what changed between version 11.2 and 11.3, let us ...


15

It appears since version 3 shadowed variables are given priority, as demonstrated below. In the temp` context x is taken as temp`x unless Global`x exists. Remove[temp`x, Global`x] temp`x = 6; Begin["temp`"]; {x, Global`x} End[]; {6, x} Remove[temp`x, Global`x] temp`x = 6; x = 5; Begin["temp`"]; {x, Global`x} End[]; {5, 5}


15

I've been really shocked at how much the features supporting Associations and Datasets have changed my coding style. Association itself is very convenient, and a lot of useful functions (like Keys and Values) introduced for Associations also work with lists of Rules, and the way Append and Join work with Associations is very convenient, if slightly confusing,...


15

SequenceLimit became NumericalMath`NSequenceLimit. In the past, that change broke some of the examples on NLimit that used SequenceLimit. I reported the breakage, and the examples were fixed to use the same syntax but not actually call the now-non-existent function. The only remaining reference in the documentation that I can find to the use of SequenceLimit ...


14

From 5 to 6: Graphics are no longer side effects A small but disruptive change for me was having to take all the ;'s off my Plot[] and other graphics commands. The previous behavior was to return a graphics object that didn't display, and to also, always, display the graphic. So the ; suppressed the abbreviated text representation of the graphics object. ...


14

The patch Here is a way to get Streaming` working: on a fresh kernel execute the following: Import["https://raw.githubusercontent.com/lshifr/StreamingPatch/master/StreamingPatchBootstrap.m"] DownloadAndInstallStreamingPatch[] Get["StreamingPatch`"] If this worked, you should be able to use Streaming`. Note however, that the framework itself changed ...


14

There is already discussion about String and ByteArray in the linked previous Q & A, so I'll comment a bit about general expressions. This only concerns the named hash algorithms like "MD5" or "SHA" etc. The single argument form Hash[expr], which is equivalent to Hash[expr, "Expression"] is completely separate and based on the internal representation ...


14

If you just want backwards compatibility, there is no need to create any symbols in the System context. It seems like a bad idea to do such things. A package should create symbols only within its own context to avoid conflicts. Imagine what would happen if two different packages tried to define System`Echo, each in their own and incompatible way? I ...


13

Just for kicks, I ran the "Benchmark Mathematica" test: Raspberry Pi model B Over-clocked CPU @ 800 MHz 64 of 256 MB RAM reserved for video 16 GB Class 10 SSD (going to need swap space with only 256 MB) Results: Benchmark Result: 0.01 Data Fitting 27.68 Digits of Pi 11.30 Discrete Fourier Transform 73.74 Eigenvalues of a Matrix 126.18 Elementary ...


13

From 2 to 3: Two-dimensional mathematical notation Version 3 saw the major advance in readability and user interface with the 2D Box language which allows the creation of true 2D input and true 2D output. Prior to version 3, it was only possible to make 1D input (which was tough to read) and to get a sort of 2D output using typewriter characters only. This ...


13

As of version 11.3.0, support for 32-bit Linux has been discontinued. Only 64-bit Linux is supported, and the system requirements page has now been updated to reflect that http://www.wolfram.com/mathematica/system-requirements.html Additionally, I sent in a bug report since I believe the installer should have refused to run on a 32-bit system in the first ...


Only top voted, non community-wiki answers of a minimum length are eligible