

What programming languages do mathematicians use? - KonaB
http://mathoverflow.net/questions/11084/what-programming-languages-do-mathematicians-use

======
jimfl
Statisticians commonly use SPlus or R. Applied mathematicians use some flavor
of Fortran, in part because of numerical libraries available in that language.
Matlab is also in heavy currency in many disciplines.

Much of the time, a scientist is driven to a language not by any particular
language feature, but by what code/tools are already available in that
language that they can build upon for their own research.

~~~
stcredzero
Many epidemiologists seem to prefer Stata. I don't know why. It's like some
SQL shell out of the early 80's.

I think that languages that didn't support "conventional" operator precedence
lost out because that went against the expectations of science/tech types.
(Smalltalk & Lisp in particular)

~~~
joeyo
_Many epidemiologists seem to prefer Stata._

That seems to be a west coast thing. East coast epidemiologists that I know
use some mix of S or SPSS or SAS.

------
cperciva
What cars do pilots drive?

What foods do vintners eat?

These are silly questions -- in all three cases, the answer is "if they're
smart, whatever is best for their circumstances". I know mathematicians who
have used Fortran, Pascal, C, C++, Java, BASIC, Assembly, Lisp, Maple, Matlab,
Magma, Mathmatica, and Maxima; and that's not counting the people who do
deliberately weird things (like computing Mersenne primes in Postscript).

~~~
hugh_
_What cars do pilots drive? What foods do vintners eat?_

I'd say it's more like asking "What cars do park rangers drive?" or "What
foods do wrestlers eat?" because we're talking about groups of people with
quite specific requirements. The question, while overly broad, isn't silly,
because there's a lot of people who have no idea and have never heard of
things like Maple, Magma. Heck, now I coem to think of it I've never heard of
Maxima, so your answer taught me something new. And if you learn something new
from the answer, it's probably not a silly question!

------
RiderOfGiraffes
The practising mathematicians I know don't program. I'm not sure if there are
any ways in which programming can help with things like Functional Analysis or
Geometric Topology. Not even sure about low-dimensional topology.

I'll ask Tim Gowers next time I see him.

The ex-mathematicians I know who now use mathematics to do things in the real-
world use a full range, including all those mentioned elsewhere.

For my PhD I used Fortran, BCPL, zed (not the one you might think - it was
essentially "ed"), and Phoenix scripting.

For my day job I use Python/Sage/NumPy, C, C++, ARM assembler, bash, BASIC and
OpenOffice Calc. Infrequently and irregularly I use Lua and Scheme. On the
other hand, I'm not really doing math anymore. I no longer prove theorems.

------
brown9-2
I find it very interesting that almost every single mathoverflow user (based
on this page alone) uses their full name as their username on the site.

Compare that with stackoverflow and HN in which we use nicknames, made up
names, etc.

Just interesting to see how different communities choose to handle something
like this.

~~~
Rod
It's a MO policy: <http://mathoverflow.net/faq>

_"We also encourage you to use your real name as your username. In your own
enlightened self-interest, realise that participating in blogs, Math Overflow,
the arXiv, and mathematical publishing are all forms of advertising for your
"brand", even if that’s not your principal purpose (and hopefully it’s not).
Since job applications require you to write your real name, you might as well
use it everywhere else, too."_

The bright side is that if a Fields medalist answers your question, you know
it ;-)

------
blasdel
Coq is the only real _Mathematics_ language I've ever played with.

Everything else just feels like it's ultimately _Arithmetic_ , even when doing
Symbolic Algebra natively in Haskell or Lisp or Mathematica.

------
stcredzero
Quantitative analysts used to use Smalltalk quite a bit. There's still a bit
of that. Ruby's taking up some of that territory now. C++ was there too, and
is still going strong.

------
Imprecate
Depends on the branch. In quantitative finance: C++, R, F#, Q, OCaml, MATLAB,
Python (NumPy and SciPy)

~~~
BrentRitterbeck
I second this. I have a quantitative finance background. I use C, C++, C#,
MATLAB, and Python. MATLAB and Python are primarily for prototyping ideas. C
and C++ are primarily used when I'm working with Linux. C# is exclusively used
when I am working with Windows.

~~~
wtallis
What kind of stuff do you use C# for? I can only imagine using it for
interoperability and GUI code.

~~~
BrentRitterbeck
Right now, I am writing a trading system using Trading Technologies' API. In
my MSFE program we use XTrader to do a lot of our simulated trading. I thought
it would be interesting challenge to create a black box to bone up on my C#
skills.

EDIT: As for the GUI comment, I am actually trying to stay away from a bloated
GUI as speed is key in this business.

Also, when we, as a program, went to Chicago during late October, so many
people said that C# was becoming an important language to know if you plan on
doing quant work. Up until that point, I had been focused primarily on C and
C++. I thought it would be wise to do some work with C# if people at quant
shops were telling me this is something I need to know.

------
Scramblejams
Very often Matlab. Very often badly. And for a programmer who has to watch, it
is to weep.

------
borga
The one I know uses Mathematica.

~~~
stcredzero
I know a bona-fide ex-NASA rocket scientist who uses Matlab. He finds that
it's much more productive than C, which he used to use heavily. His NASA job
basically involved numerical methods for integration to track the trajectory
of the Space Shuttle.

~~~
borga
I like MatLab, but for me (biologist) it's a very intricate language to learn,
and AFAIK not easy to use in multiple platforms where you don't have the
framework installed. And "expensive" too (as Mathematica).

~~~
stcredzero
But as a rocket scientist, he says there is a lot of software ready-made for
him to use, which even included graphics/animation, analysis of realtime data
feeds, and limited finite-element analysis of the rocket's structure. Also,
his boss had a good software budget at the time.

------
larsberg
LaTeX

