Re: Mathematica to .NET compiler
- To: mathgroup at smc.vnet.net
- Subject: [mg79318] Re: Mathematica to .NET compiler
- From: vengelson at gmail.com
- Date: Tue, 24 Jul 2007 06:09:52 -0400 (EDT)
- References: <f7pon7$prc$1@smc.vnet.net><f7sgu2$ss8$1@smc.vnet.net>
The compilable subset of MathCode is now available again at http://www.mathcore.com/products/mathcode/subset.php As you might notice it includes mostly numerical functions of numerical (+complex) arguments, as well as multidimensional rectangular array handling. There are some tricks to handle other functions, explained in the manual. The main problem with Mathematica compilers is not target code generation. Whatever target code can be easily generated, either C++ or Fortran or Java or C# or even bytecode. Since users would perfer high performance, source code portability and code readability, C++ becomes at least a rather good choice. MathCode for Java was just another back-end, it was under development some time ago but it was frozen because of lack of interest. The main problem with Mathematica compilers is not the basic kernel. Dynamic symbol tables, sparse arrays, tree data structures are known for many years. Well, it can be relatively tricky to make their performance optimal, and this is one of reasons why they are missing in MathCode for the moment. The main problem is reliable reimplementation of "heavy" features like symbolic integration, Simpify[] or NDSolve[]. There is lot of knowledge and tons of heuristics inside. I believe, most people would like to have these features, with the source code and without Mathematica beeing installed on target machine. How would you help them ?