When running the following code on Mathematica 10.2
SetSystemOptions[ "CompileOptions" -> "CompileReportExternal" -> True];
I received the message:
System`SetSystemOptions::obs: Developer`SetSystemOptions has been superseded by System`SetSystemOptions, and is now obsolete. It will not be included in future versions of the Wolfram Language. >>
What will SetSystemOptions become in the future?
SetSystemOptionsmoved out of the `Developer`` context after version 5.2, which was a long time ago now. – Oleksandr R. Oct 13 '15 at 11:25<<Developer– matheorem Oct 13 '15 at 11:32ToPackedArray, then I should writeDeveloper``ToPackedArray, right? But I still don't understand why load `Developer`` is not right and should be done cautiously? What kind of bad things can happen? – matheorem Oct 13 '15 at 11:37CCompilerDriver. If we don't load it, how can we done this? – matheorem Oct 13 '15 at 11:47CCompilerDriver\`` is a package, unlike theDeveloper`` context. It is meant to be loaded this way and should not contain any shadowing symbols to begin with. This is the responsibility of the package authors, and since this is WRI, if there are any shadowing symbols then it is a bug. I just don't think it's a good idea to add arbitrary contexts to the path as if they were packages, because they are not, and thus there are no real guarantees about what they might contain. – Oleksandr R. Oct 13 '15 at 12:09Developeris also a package. As I understand it, context is just the path of package. Second, IfSetSystemOptionsreally has already been moved out ofDeveloper, then loadingDevelopershall not shadowSetSystemOptions, because there is noSetSystemOptionsinDeveloper, only one inSystemcontext. So current shadowing means that there is still aSetSystemOptionsinDeveloper, am I right? – matheorem Oct 13 '15 at 13:27Developer\`` a package. Although it is not a package in the ordinary sense (the context is fully populated and so the package does not need to be loaded), with such a claim being given, it should certainly be safe to add it to the context path in this way without shadowing problems, i.e. they probably should have removedDeveloper`SetSystemOptionssome time ago. If you do not like the message, you have the option toOffit, or to unprotect and removeDeveloper`SystemOptionsandDeveloper`SetSystemOptions`. – Oleksandr R. Oct 13 '15 at 16:06