title: Java or Python for math?
body: <p>I'm trying to write a pretty heavy duty math-based project, which will parse through about 100MB+ data several times a day, so, I need a fast language that's pretty easy to use. I would have gone with C, but, getting a large project done in C is very difficult, especially with the low level programming getting in your way. So, I was about python or java. Both are well equiped with OO features, so I don't mind that. Now, here are my pros for choosing python:</p>
  
  <ul>
  <li>Very easy to use language</li>
  <li>Has a pretty large library of useful stuff</li>
  <li>Has an easy to use plotting library</li>
  </ul>
  
  <p>Here are the cons:</p>
  
  <ul>
  <li>Not exactly blazing</li>
  <li>There isn't a native python neural network library that is active</li>
  <li>I can't close source my code without going through quite a bit of trouble</li>
  <li>Deploying python code on clients computers is hard to deal with, especially when clients are idiots.</li>
  </ul>
  
  <p>Here are the pros for choosing Java:</p>
  
  <ul>
  <li>Huge library</li>
  <li>Well supported</li>
  <li>Easy to deploy</li>
  <li>Pretty fast, possibly even comparable to C++</li>
  <li>The Encog Neural Network Library is really active and pretty awesome</li>
  <li>Networking support is really good</li>
  <li>Strong typing</li>
  </ul>
  
  <p>Here are the cons for Java:</p>
  
  <ul>
  <li>I can't find a good graphing library like matplotlib for python</li>
  <li>No built in support for big integers, that means another dependency (I mean REALLY big integers, not just math.BigInteger size)</li>
  <li>File IO is kind of awkward compared to Python</li>
  <li>Not a ton of array manipulating or "make programming easy" type of features that python has.</li>
  </ul>
  
  <p>So, I was hoping you guys can tell me what to use. I'm equally familiar with both languages. Also, suggestions for other languages is great too.</p>
  
  <p>EDIT: WOW! you guys are fast! 30 mins at 10 responses!</p>