MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: Should I be using Mathematica at all?

respectfully, I don't think this is quite right although I see what
you are getting at. C++ is platform independent and free, unless you
chose to tie yourself in to particular proprietary Libraries or IDEs.

2009/4/14 Joseph Gwinn <joegwinn at>:
> In article <gruppj$nk$1 at>,
>  "Paul Ellsmore" <paul.ellsmore at> wrote:
>> Hello again,
>> I have had several questions answered by this group, for which I am very
>> grateful. Now I have a more general topic, which I know will not have
>> single, clear answers.  I just would like to hear your opinions.
>> I have some (fairly complicated) legacy Mathematica v5 software which we
>> currently use in-house. Our intention is to turn this software into a
>> saleable product. At the moment, I am contemplating upgrading to V7, wri=
>> a GUI for our code (which has no compatibility issues with V7) and
>> distributing it using PlayerPro.
> What is the nature of this product?
>> To protect our IP, I will be using Encode to make it impossible for it t=
o be
>> reverse engineered. Does anyone know how secure this will actually be? I=
s it
>> more or less secure than a compiled C++ program would be, for instance? =
>> there any particular issues I should be aware of?
>> It turns out that there are some serious problems for us using PlayerPro
>> (apart from the price!) which are making us reconsider using Mathematica=
>> all. Top of the list is the inability of Wolfram to offer a trial licens=
>> for PlayerPro. What this would mean is that we would be losing 100 or so
>> every time someone ordered a trial version but did not subsequently buy =
>> package, because there is no way for us to get our PlayerPro license bac=
>> This is not viable. The best Wolfram can offer is to give our prospectiv=
>> client a trial version of the full Mathematica package (say for 15 days)=
. As
>> a workaround, this is very clunky,  when I requested my trial of V7 it=
>> 4 days to get the license. I think that, these days, people expect to go=
>> a website, download a trial version and start working with it immediatel=
>> So, I am considering our options, in particular open source code, such a=
>> C++, and I'd be interested in your opinions about this. Our V5 code does=
>> involve any exotic maths, but it makes extensive use of SetDelayed, and
>> these definitions are frequently nested within long and complicated Do
>> loops. Speed is crucial to our application, so is there any, in principl=
>> reason why Mathematica might be able to do things significantly faster t=
>> a compiled C++ program (assuming the C++ code is written by someone who
>> knows what they are doing)? Is there a better language than C++, bearing=
>> mind the need to compile (or encode in some way) and distribute the
>> resulting code? I know there used to be a compiler for Mathematica once =
>> a time, is there any easy way to get from mathematica code to a compilab=
>> program. I should stress that we are very happy with Mathematica in term=
s of
>> developing our application, it's just generating anything that we could =
>> that is problematical.
>> I have some experience of writing VB, Visual C and similar applications,=
>> these never had a large graphical content. Our code will require a lot o=
>> plotting of data (2D only, but lots of curves which need to be interacti=
>> in some sense). Mathematica can do everything we want in this respect, b=
ut I
>> am less sure about the open source code. I am sure there are add-on
>> packages, but never having used them I don't know whether they can match
>> Mathematica's built in abilities,  any comments?
> The big issue with translation to C++ or any other language to to avoid
> lock-in to either Windows or to the compiler make and model.  If lock-i=
> is permitted, especially to Windows, every time MS burps you will be
> forced to play catch-up.  While C++ is in theory standardized, there ar=
> significant differences in what C++ compilers will accept.  Use of the =
> subset of C++ is usually far less stressful, and allows for graceful
> transition should the compiler vendor go to find his guru.
> Platform independence also helps when negotiating with platform and
> compiler vendors.
> To avoid lock-in, one must do all testing on at least two platform kinds
> using compilers from at least two makers.  It isn't enough to make
> platform independence a goal, one must directly test for independence,
> as its very easy for dependencies to creep in unnoticed.
> Choice of platforms:  If one covers Windows, MacOS, and UNIX/Linux, one
> has covered 99%.  Going from one platform to two is the big step.
> Adding the third isn't that much harder to achieve, although testing is
> still an expense.
> Joe Gwinn

Peter Lindsay

  • Prev by Date: Re: Fast calculation of pair correlation function
  • Next by Date: Re: Fast calculation of pair correlation function
  • Previous by thread: Re: Should I be using Mathematica at all?
  • Next by thread: Re: Should I be using Mathematica at all?