On Saturday, May 31, 2014 10:40:02 AM UTC-4, Robert Gates wrote:

> my colleagues and I are planning on writing cross-platform (Linux 
> variants, OS X, Windows) commercial software for the research community, 
> preferably in Julia. Our projected release date will be some time in the 
> next 3-4 years. It is crucial to user-friendliness and protection of 
> intellectual property that Julia supports (and documents) its compilation 
> to stand-alone processor-native code. If that code depends on 
> shared-libraries, it should be possible to install these together with the 
> distributed application without incurring licensing issues in a commercial 
> context.
>

Since all of those things are basically possible now, although 
precompilation is not easy to use, I would be pretty confident that they 
would be working smoothly in 3-4 years.
 

> Further, it will be necessary to develop full-featured GUIs with 
> interactive 3D plotting features such as patch with full alpha transparency.
>

By "develop", do you mean that you plan to develop 3d plotting yourself?  
Or that you will be relying on someone else to develop it for you?

Full-featured 3d plotting software takes years to develop; your best bet 
would be to wrap a mature library like VTK.   There is actually already a 
proof-of-concept wrapper at https://github.com/ihnorton/VTK.jl

The question we are left with: will Julia be ready in 3-4 years? If we use 
> Julia, will we be faced with having to debug Julia packages instead of our 
> own code? 
>

No matter what language or libraries you use, you always face the 
possibility of bugs in the library.   Julia is surprisingly stable for a 
language that is still in its early stages, the main question is what Julia 
libraries you are going to rely on.   But almost certainly you will run 
into things that are less mature than if you are using widely deployed 10+ 
year-old libraries in Python or C++.
 

> Will the end-user ever notice that we have used Julia for development?
>

No, there is no reason you have to make this user-visible, even now.
 

> We have heard that C, Fortran can be called easily in Julia, i.e., we 
> should be able to call solver such as PARDISO without issue? This will be 
> crucial, as our problems rely on the solution of large, unsymmetric, and 
> possibly indefinite systems.
>

Right now, you will have to write wrappers yourself, but I have no doubt 
that we'll see usable PETSc wrappers within the next year or two, and you 
can call PARDISO that way.  But it shouldn't be particularly hard to call 
PARDISO yourself, especially in shared memory.

Reply via email to