Message Boards Message Boards


Roadmap for CDF?

Posted 7 years ago
65 Replies
94 Total Likes

I am doing some project planning that could use the CDF Player and CDF technology as a means of distributing a mathematical model to reviewers.

However, I've noticed that the documentation for 9 is really for 8. There have been some indications that 10 is coming out with no changes to the documentation since version 8. There is no File | New | CDF (Free or Pro) is 9. The latest CDFs in CDF-Examples are from 2012. This raises a red flag that CDFs are no longer mainstream.

Ideally we would like to use a technology that is supported and will stay current with Windows and Apple OS versions.

I see that there is a CDF Export and Preview under the File menu. Some of the questions I will be asked by management are:

  1. Is CDF considered a legacy technology? If not, will it be available in 10 and future versions - is there a roadmap that can be referenced?
  2. If CDF is considered legacy, when do support options expire?
  3. Are there any replacements planned from Wolfram that are functionally equivalent to CDFs? If so what are they?
  4. What are runtime licensing considerations that should be honored if we use C and C++ as a front-end?

CDFs offer an attractive solution - I love what I am seeing in the CDF-Examples - but before committing to CDFs we need to know that this technology is on-going and will stay current with Mathematica and operating systems.

65 Replies

I think that CDF is here to stay for the foreseeable future. The current CDF player is at version 9.01. IN the current version of Mathematica the creation of CDFs has been changed. One creates a notebook and then uses Save As... to choose CDF as the saving form. Then one is working with a CDF. But more importantly are the two menu items in the file Menu which are CDFPreview and CDFExport. These replace the File|New items that you were looking for. And, in effect these item promote CDFs to a higher level of importance. The WolframCloud supports CDFs as well. And Mathematica 10 also has the same CDF menu items described above.

In addition to all of this there is the function family that supports CDFs: CDFDeploy and CDFInformation.

My conclusion is not to worry....

David - Thank you very much! That's good news.

Now that version 10 has been released and it includes new structures like DataSets and Associations, will a new version of CDF Viewer/Player be required to support the new functionality or does the CDFDeploy convert these to something the existing CDF Viewer/Player understands?

Someone from WRI should comment.... but generally I believe that the CDF player has to be updated to a new version to support the new functionalities of Mathematica 10. The CDF payer is, in effect, a restricted version of Mathematica. I do not know if a new update has been posted to the Wolfram website.

Can someone from WRI comment on the timing of the v10 update for the CDF Player? I have much CDF content and need to update it for the approaching Fall semester. If it will be more than a few weeks I will need to stay back on v9 for my Fall updates.

Posted 7 years ago

I hope CDF is continued to be supported for v10. I am sending a lot of CDF export files from my notebooks to customers. I had to go back to v9 to enable them to open the CDF files in the free v9 player. When can we expect a CDF v10 player?

If one looks in the Wolfram CDF Player installation one sees an AddOns/Applications folder. This is very nice because one can add one's own applications there with packages, stylesheets and an init.m file. This is extremely convenient because you can add your own code in package form to the CDF player. It is quite likely that sophisticated CDF documents would use self-generated packages. You could also include a folder of CDF files for an extended application, zip it all up and a non-Mathematica reader could just unzip it into the player.

It would be nice if the CDF player had a place to search for package applications that was outside the installation - something corresponding to $UserBaseDirectory with Mathematica proper. There is a MathematicaPlayer in my personal folders that seemed to have gotten installed at the same time as the free player but when I tried to move the added package there it didn't work. Does anybody know if something like that is supposed to work?

In any case, the free CDF player seems to be one of the more promising features for enhancing the value of Mathematica. I hope WRI will keep it and polish it and make it robust, simple and stable because nothing could be a better advertisement for Mathematica proper.

Free CDFs can't read external files--I assume that applies to user-installed packages. Enterprise CDFs can read external files, though they may need to be Encoded--this was certainly true for the previous Mathematica Player.

The free player will read a package file (it was Encoded) if it's in the Wolfram CDF Player installation. I tested that.

But WRI is off on the wrong foot again with an Enterprise CDF! There should be no such product! They should use the model of the Adobe Acrobat Reader. You need, say, Professional Acrobat to write PDF files and that's a few hundred dollars. And it doesn't have Adobe logos plastered all over the PDF documents. You should only need Mathematica to write the most general CDF documents. I bought the Professional version of Mathematica many years ago and have subscribed to Premier service for updates all these years at a pretty penny - certainly much more than Adobe Acrobat Professional costs. I am rather ticked off that one gets so little for it. It took two years and $900 to get the Version 10 update and I consider it so impaired that for the first time I went back to the previous version.

In technical publishing Mathematica and CDF should blow PDF documents out of the water, but they never will because of their convoluted and inconsiderate attitude toward customers. And also because a typical technical professional has to spend much more time solving gratuitous Mathematica problems then he does solving his technical problems.

David, Thanks for the candid posting. CDF seems to have a lot of potential and I was considering using it as a base for a technical information product but, between your post and the number of posts about problems with version 10, maybe it is too soon. Mathematica as a platform is a very ambitious project so maybe it's understandable that it will take a while to iron out the incompatibilities. I'm very curious to see what WRI does with version 10 of the CDF player and how long it takes them to come out with it.

Totally agree. I've also put in a lot of work on the assumption that cdf would be properly supported in a timely manner. So I'm worried ...

Any news on CDF to version 10?

Posted 6 years ago

I agree that there should be no "enterprise" product. The capability to produce useful distributable applications should be built into Mathematica.

I recommended this to Wolfram several years ago. I am sure I am not the only one. At that time I was using Mathematica to analyze defectivity for cause in a semiconductor process. The analyses were distributed throughout the engineering organization. I was having to spend time running these analyses on each new set of data.

I recommended that a future version have the capability of producing a distributable stand-alone application that could read data files, make computations, and deliver results. I pointed out that to assume this would reduce license sales would be naive. What would really happen in an engineering environment would be this: As soon as someone began distributing such useful applications, the engineers receiving them would want the capability of making their own. It would trigger an expansion of Mathematica use throughout the organization. Unfortunately, reserving this capability to a much more costly enterprise tool will probably defeat the purpose.

This is by no means the first time I have advocated WRI for better service to the engineering disciplines. And I see some hope now, especially in areas like control theory, where they seem to be trying. But that other tool -- in my opinion a much inferior tool -- has made such early inroads that it dominates the engineering market.


I'd concur with the sentiments above.

4 months after the release of V10 and I am still having to build in V9 because there is no Player Pro (and no CDF).

It beggars belief.

Posted 6 years ago

It occurs frequently that I cannot send a CDF to a correspondent because I use version10. It is not always possible to revert to v9 I am e.g. in a discussion about 3D space curves and am using the new FrenetSerretSystem to prove my point. Unfortunately, I have to use a PDF to explain my point! It would be nice publicity for WRI if others could see all the new wonderful functions v10 has plenty of! I also can no longer upload demonstrations made in v10. In some cases, I convert the code to v9 but this becomes increasingly difficult and pointless. I am afraid (and hope to be wrong) that WRI will no longer support CDF nor the demonstrations site and replace both with one of their many new cloud products?

It would be helpful if somebody from WRI could clarify this.

At the WTC in October there were rumors that a Wolfram Player(Pro)10 (only one executable!) will be built (at least beta-wise) this month. PlayerPro is not abandoned and to my mind still one of the best actually nicely working products of Wolfram Research Inc.

The player pro appears to currently cost £130. UK Therefore it will not be much use who just want to distribute concept illustrations in education. Please may we have a version 10 of the systems that were in place before?

Also: See David Keith's comments above (which I think are so sensible...)

As I understood Andre Kuzniarek in his talk ( he mentioned that there still will be the free player, of course, but the player and the playerpro executables are the same, i.e.: if you buy playerpro you can change the free player to playerpro by password. that announcement was applauded by the audience.

Okay - I downloaded the zip file and it seems to indicate a new version will arrive very shortly ....

Posted 6 years ago

Thanks Rolf. This answers my question.

Well, we still do not know how many weeks or months "very shortly" really is.

Work on the V10 CDF Player (w/Player Pro activation capability) is in-progress, and the release will still occur within this quarter. Can't be more specific than that yet.

Some of you on this thread have been promised access to test versions, which are looking to become available towards the end of next week. Stay tuned!

We are still in the testing phase for CDF Player, so it looks like the release launch will take place at the start of the new year. We are however happy to expand our list of beta testers. so please contact if you are interested in becoming a tester, thanks!

Could someone from Wolfram please give us some time scales and what is/will be available on the cdf players and plugins? The lack of times scales is seriously impacting our aspirations to use the product. Thanks.

Is there a reason why version 9 can not be used until version 10 of CDF is ready?

I'd rather wait for a solid release of CDF than having one released in a rush that has many bugs and does not work well, then we will start waiting again for an updated version of the just released version that fixes the bugs :)

We've gotten great tester feedback, and are wrapping up the last few bugs. Took a little longer than expected (doesn't things always?), but we're in the home stretch. Right now we're expecting to get the release out in a couple weeks barring any last-minute surprises. That's the most I can say, and more than we usually like to offer before a release, knowing there could always be unexpected surprises. But we also realize many of you are eagerly awaiting this release and are anxious for details.

So could you clarify ... when it arrives will it also be available as the plug in that loads into browsers - i.e. will it supersede the old plug in?

Yes, just as Mathematica 10 does now. It's the same plug-in.

I colleague just told me CDF Player 10.0.2 is available at

My deployed tool is working fine! I'll finally be able to use associations and all the new v10 stuff.

Is there an announcement somewhere?

Just posted the "official" community announcement:

Where is the best place to look for documentation? I understand that one can interact to some extent from the host web page - is that correct? What can be done please and how? Thank-you.

We're in-progress on some new docs and videos to expand what's on the CDF site:

But we recently discussed the topic of pulling data from the host web page (among other new features) in this thread:

I'm replying to your reply for my request for info on documentation. I don't think the links you put in are what you meant ...or at least the second link ...they both just go to resources.

Sorry, meant we recently discussed the topic of pulling data from the host web page (among other new features) in this thread:

So ... does this mean that when someone browses onto a cdf,a version 10 plug in will now be auto downloaded from Wolfram?

It means that anyone viewing a web embedded CDF without the plugin installed can be directed to our site to download the latest version. The degree to which this is automated depends on the level of web coding used to embed the CDF. We document a number of possibilities in the deployment details of the resources section on the CDF website:

Embedding a CDF via the cloud offers the most automated results (bypassing the need for the plugin), but there are some limitations on the types of controller elements available to Manipulate objects in the Wolfram Cloud at the moment.

but there are some limitations on the types of controller elements available to Manipulate objects in the Wolfram Cloud at the moment.

Is it possible to know when these limitations will go away, such that CDF on the cloud will work and supports all features as in the plugin or in the player? Last time I tried Manipulate in the cloud, many dynamics did not work. Will there be version 2 of the Cloud to look forward for?

Of course note that there isn't yet a version 1 of the cloud. It is officially a Beta.

Yes, cloud improvements are occurring steadily, stay tuned for something in the way of a "v2" announcement of a stronger support layer for Manipulate et al. Our forward-looking mission includes getting as much of Demonstrations converted to cloud as possible.

575 mb ! This is a big jump from the previews ones:

8.0.4 -> 105

9.0.0 -> 169

9.0.1 -> 197

10.0.2 -> 575

Are there structural differences to the functionality? (I'm still downloading)

This release allows for activation as Player Pro, instead of requiring a separate installation, which at the same time allows coverage of all the various linking technologies supported by EnterpriseCDF. The new footprint is surely reasonable in this era of multi-gigabyte thumb drives and speedy internet connectivity.

If I have Mathematica Enterprise, can I connect to the kernel supplied by this new release of the Player?

I'm interesting on calling the kernel, through .NET, but without buying one Player pro license for each user, although I do have the Enterprise version of Mathematica.

Not sure what you would want to accomplish by calling a CDF Player kernel from a coy of Mathematica (Enterprise or not). They share the same kernel.

Regardless, be aware our terms of use for CDF Player do not allow for other front ends to connect to the kernel. A CDF can exploit .NET, but we are not allowing a .NET application to run a kernel (without a master CDF file being involved).

With Enterprise Mathematica, you can export CDF files that can run .NET and other such links in CDF Player 10.0.2. Perhaps that point has not been clear?

I don't want to call it from Mathematica... but from other applications. I can call Mathematica itself, but it cost too much (one license per user...). So, can this new player be called from other applications? In player pro licensing? In player licensing but calling Mathematica Enterprise signed "functionality"? Never?

You cannot call the kernel from other applications, period. See:

Prohibited use (e) means only CDF files are allowed to run the kernel, not connections from other applications.

OK. So this hasn't changed.

I really gave the cloud a try, but it is soooo sloooow for many calls, little computation scenarios. The test I did, in my application environment, was simply x^2, and it was probably half a second per call, which is not bad at all, considering that just an intercontinental ping takes at least 0.1 seconds, and then there's the get in line, etc. But not enough if we want to do 1000 calls of x^2, and there's no algorithmic way of knowing it in advance, so to ask for all computations in a single call. This 1000 computations take almost 10 minutes to complete, for something that locally takes 1/10 000th of the ping time itself.

So, I definitely have to go through a local computation, but the cost break point between programming it in a lower level environment, like .net, vs the cost of multiple full Mathematica licenses, doesn't compensate going the Mathematica way. I only which we could have an equivalent to WR competitors' MCR.

Thank you anyway for the prompt response.

the cost break point between programming it in a lower level environment, like .net, vs the cost of multiple full Mathematica licenses, doesn't compensate going the Mathematica way

Pedro, have you considered Enterprise CDF? In my organization we develop tools for our internal use using a single Enterprise Mathematica then we distribute the tools internally via CDF without having to pay more for licenses. We only have to pay more for more developers not for more users.


I do have Enterprise Mathematica, and I have built several Enterprise CDF apps.

My problem is when I want to interface existing commercial tools with Mathematica. For instance, call Mathematica from CAD tools, to add special functionality to them, as add-ins. This means calling the kernel, without passing through the CDF interface (unless someone can explain me how to do it in another way).

The call scheme/trigger is limited to the way these tools are built. A tool that everybody knows about, and so, that is easy to use as an example, is MS Excel. Imagine that I want to add a user defined function (UDF) to it, and that the user enters it in the cells, as many times as he wants. There's no way of gathering in a single call all refreshes that Excel requires when the main calculation loop is triggered (when a user changes a cell that triggers an update). If there are 1000 uses of the UDF, this mean we will call the kernel or the cloud 1000 times. On a CAD system, it is exactly the same thing. Lets suppose that some intelligence is added to each drawn line. For instance, the colour of the line depends on its vertices xy coordinates. Each time we move a line, Mathematica is called to determine the line new colours. If I move 1000 lines at a single moment, the computation will be called 1000 times (since this would be at the single line object level: on a on update triggering event, or something similar).

This means that only local computations are fast enough (if not, the interface of these tools will freeze; and I cannot re-program multi-million hours of commercial tools development, just to optimize the way I can call a cloud environment). Also, some engineering is done off site, at remote locations that don't even have internet access... But this means that we need a full mathematica license for each user, although some sites can be managed with a Mathematica license server.

But since these are not rocket science algorithms, they certainly don't deserve this full Mathematica capability cost, on computers that will never open the Mathematica Interface anyway (exactly for the same reason that the player pro doesn't cost the Mathematica full license: these are calls to pre-built functions, and not reprogrammable by the plug-in user).

We could go for our own webMathematica server, that I imagine could reduce the call time, but this starts to become an IT project, when compared with what could be a simple add-in programmed by the engineer implementation.

We can see on WR site that some kind of Engine is coming out. Although the site, and discussions that I had with more knowledgeable people, makes me believe that this is for bigger projects (that include commercial software distribution, etc) and not really for the day to day need of an engineering office (for which, the player concept is simple). But if a future Engine product is going to exist, why not use the player as one of the forms of engine distribution? If it is a question of license, why not have an extra/specific activation for it? Player, Player Pro, Player Engine? If I pay for an Enterprise version, should this bring benefits on using an engine? Should I be able to call an engine, limited that I only call functions declared on an Enterprise signed package (loaded on init, or something like that)? Isn't this the concept of the Player Pro: as long as the programming is locked, the full license is not needed, and you can use either the pro, or the non pro but with an Enterprised signed version of the program?

Of course I know that someone could just rename all functions, and sign the package... but if we are afraid of license disrespecting, there would be no need to go to all that trouble anyway. The signed notion also means that it is at least slightly traceable. And if it is to connect to other tools, on a production environment, we are probably not on the most prone to illegitimate activity environment. And the competition has been allowing kernel access, through their MCR, for a long time (much longer than the Player has been around), and after all this time they still do it (and to my knowledge, for FREE, that means, simple Player level equivalent). And, in my opinion, at this moment the balance is still short on the exposure side (although some improvements have been made, since the initial launch when we all had to pass though an internet signing site...).

Well, I've been asking for this for the last 5 years. If it isn't there now, it is not going to be there in the near future. Meanwhile, I've been using more and more of .NET..., and less and less of Mathematica (I even almost dropped the Enterprise extra on my last license update, although a last minute hope made me keep it for one more year... but I did terminate another license we had, for lack of believe on WR strategy for the engineering market, where it would have to play along with all sorts of existing tools, and facilitate integration).

Pedro, if you have Enterprise CDF, you can already make some tests with webMathematica Amateur. I agree It's not the best solution for you, but you can easily integrate it with Excel, and get very fast response time if it's inside the company. In webMathematica user guide there is an example of how to do it. If you are using Windows, the installation is very simple.

One more point. Have you tried to use ArrayFormulas in your cloud test with Excel? If, for example, your x^2 is calculated over a column, an ArrayFormula will make the calculation for each cell just once, instead of 10k times, with just one call.

Murta, thank you for the suggestion. I do make heavy use of ArrayFormulas in some of my plug-ins. I do that mainly through .NET frameworks, and that works very well (since I don't have the advantage of short text programming, as we have been used to with Mathematica, recovering pieces of code from different languages becomes very useful). ArrayFormulas work very well, although sometimes users get confused with all the cells blocking and the ctrl+shift thing. It is also through that same framework that I have called the cloud, just for some tests (the x^2 function).

Ended up discovering that the only thing that I will be able to do with it, will be a licensing control system through the cloud. Nowadays, I have my packages blocked to specific computers (serial number stuff), and when I lend the packages to a partner, or a client, I create a USB dongle with limit count of uses (just enough to share some work, during a specific project). But this forces me to manage a physical object (send it by mail, recover it at its end of life, etc). Since work sharing is not as mission critical as production, what I can do through the cloud is activate or not the plug-ins, at their first call of each session, for whichever software they were developed. That way, computation is still made locally (though, and shamefully, on .NET), but activation is controlled at a distance.

On my line of business (and I believe, it is similar to most of the engineering world), my computations need to be heavily customizable, to fit each application needs. This means that my functions are just small bricks that are putted together by the end user for a much bigger analysis. This means that the portion that can take use of arrays is very small (10 to 15%?). All the rest requires individual calls.

I have never tried webMathematica, since I really don't feel that it is fitted for my applications. As explained before, there are a lot of times that the engineer is abroad, and sometimes even without access to the internet (on the client site, etc), and trying to receive thousands of answers from a distant server, just because he changes something on a CAD or a spreadsheet, is out of the question. Since I only have time to invest my-self on one technology, I have to chose the one that answers to my needs in the best away. And unfortunately, not due to technical limitations, but to business strategy (in my personal opinion, deviated of what are the needs of millions of potential users, since I don't believe that WR really intends for cases like mine to pay for a full Mathematica license for each end user; if that was the case, webMathematica would also not allow for such solutions), WR technology doesn't present itself as a feasible option. And still, everything is there, and I can't avoid thinking that this new player version is an opportunity that was lost (as the one before, and the one before that one, etc), but this time, most specially with the fusion that was done with the Player pro, the availability of the entire wolfram kernel, etc.

But this is only my humble opinion (although shared with many other users I've encountered during the conferences).

While not all available yet, this page on our Wolfram Technologies site maps out what we expect to achieve wrt to making the kernel available via other means:

Another case of "stay tuned"...


Two years have passed, and I wonder what are the current choices for my needs:

  • develop functions in the Wolfram Language;

  • call these functions from external programs (e.g. from .NET)

  • the end user will never program in Mathematica, and hence, having the full Mathematica installed is a cost overkill

  • cloud is not an option; computations have to remain local (I mean, to the machine), for multiple reasons (network accessibility, speed, etc.)

  • I have CDF Enterprise signing capabilities, but no Player Pro licenses

Has the "Engine" came out?

Can the current player technology / license restrictions handle this?

Posted 4 years ago

It sounds like you simply need to point your application users to CDF Player. Your EnterpriseCDF files should work as you describe, without any need for Player Pro. CDF Player can be converted to Pro via user activation, if you would rather not do EnterpriseCDF.

As I've mentioned in other responses on this thread, desktop CDF Player is here to stay. The Wolfram Engine concept is still being worked through, but I can't say more about it.

I don't understand your answer. Are you saying that I can use CDF signed by Enterprise, to compute and return results to external apps? Or are you saying that I can just substitute the full scope of the external apps by the CDF app itself? (by an external app, I mean any application not part of the WRI suit, like CAD software, spreadsheets, etc)

Yes, I'm saying an EnterpriseCDF can use .NETLink, JLink, RLink, DatabaseLink, and otherwise Import/Export data while viewed/running in CDF Player on desktop.

Posted 5 years ago

Since this thread is about the future of CDFs, I thought I'd share what Wolfram Technical Support told me this week:

Just to let you know, web browsers are slowly moving away from the technology that supports our plugin. You may have noticed that it does not work on Chrome and Edge, and more browsers are to follow over the next year or so. We are migrating most of the functionality offered through the plugin over to our Wolfram Cloud products.

In short, as plugins are a dying technology, our development teams are moving away from updating it. You can read more about it here:

Sounds like they're phasing out stand-alone CDFs.

CDF is not being phased out. The stand-alone desktop player is an incredibly useful deployment channel, particularly for Enterprise Mathematica users. It's simply the case that browser plugins are on the way out, and so web embedded CDF content has to come from the cloud, i.e., hosted online from from Wolfram servers or from a private cloud installation. For this reason you see Cloud CDF deployment options in our various cloud platforms, and also the means to export CDF down to the desktop. Ultimately, embedding CDF content on the web becomes easier than ever through the cloud, as simple as embedding YouTube videos or sharing content in social media.

Sounds like they're phasing out stand-alone CDFs.

Thanks for the update. Does the above mean that the CDF player itself will also be phased out? How will the public run all of the CDF's many of us have written over the years if they do not have Mathematica itself?

I do not see why CDF's themselves have to be phased out, just because the browser can not run them?

Posted 5 years ago

My question to tech support was about how to set the overall magnification of CDF Player 10.3 using an init.m file. The answer that came back ended with the part I posted. Reading between the lines, I wouldn't be surprised if the stand-alone player was phased out in a few years in favor of cloud services.

I wouldn't be surprised if the stand-alone player was phased out in a few years in favor of cloud services.

That will be a huge mistake by WRI. So what will be next? Phase out Mathematica itself in favor of an on-line only subscription to using Mathematica on the cloud?

All this attraction and moving toward cloud services and cloud computing is really going in the wrong direction if you ask me.

But no body asks me, and WRI can do what ever it wants I suppose.

CDF is here to stay, see my more detailed comments in response above.

I agree with Nasser on not having all services pulled into the cloud (small 'c' - it's not God.)

This is what I would like to see as a product. A free player that anyone could install on their computer. Any owner of Mathematica, or someone working under an institutional license could write documents for it. These documents could look like scientific and technical papers. It should be nearly automatic to convert a regular notebook to a player document. They should include most (if not all) types of dynamic content, including custom DynamicModules. They should be able to use packages and style sheets supplied by the author. These could be sent to the intended reader along with the document as zip files that could be installed in the free player Applications folder.

They would be good enough so that someday soon nearly all papers on sites such as physics archives would be available as such documents.

There would be only one version of the product. There should not be one for the military-industrial-academic complex and then another one, that didn't work, for everybody else.

This would be a tremendous service to mathematicians, scientists and engineers. The advantage to Wolfram Research would be that it would introduce a far larger population to the capabilities of the Wolfram Language and convert many of them to customers.

Posted 4 years ago

Are there plans to use cloud content rather than plugin with the "Interactive" button on

We are transitioning away from plugin-based embedded CDFs towards cloud-based content. The new pointers to Open Code examples are one step in that direction:

Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract