F
F
fr0g2010-11-29 22:56:19
Mathematics
fr0g, 2010-11-29 22:56:19

A programming language for mathematical calculations?

What programming language do you think is best for implementing complex calculations (financial and actuarial mathematics, statistics).
I understand that supercomputers and HPC clusters are assembled for these purposes, but still, which language is preferable to use in conditions of relatively weak computing power?
I think that the language should be functional, since this paradigm is closest to pure mathematics, the ability to cluster the application is also important ...
In general, who has any thoughts on this?
If anyone has experience in writing such applications, I would be very grateful if you could describe at least in three words how you did it.
Thank you!

Answer the question

In order to leave comments, you need to log in

12 answer(s)
0
0xE0, 2010-11-29
@0xE0

again I will run into cons, but
en.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D1%82%D1%80%D0%B0%D0%BD

D
DeNnEr, 2010-11-29
@DeNnEr

First, the functional programming paradigm is just about how to write programs. The purpose of this paradigm is to design programs as mathematical functions.

Of course, there are some big goals behind this, someone believes that this is the only true way of programming, someone worships this paradigm as a god. But these people, sorry for such a rude statement, are fools. Truth is in between. In other words, functional programming allows you to make the code more compact, beautiful, faster, but using only this paradigm, ignoring the rest, is only harmful.

It is important to understand what is required of the language. As I see it, there is only one requirement - high speed with small resources that will not increase (did I understand correctly?).
If everything is so critical (100 and 1 time evaluate the task!), then the choice is not great: C, C ++.
If you want to taste the functionality, then you can try Haskell, CL (Common Lisp). But I repeat, if the problem contains the word "function", this does not mean that you need to use "functional programming".

Y
YasonBy, 2010-11-30
@YasonBy

For statistics, there is a special language R. Cross-platform, open, and with a bunch of libraries.

S
Stepuk, 2010-11-29
@Stepuk

Haskell.

F
FeNUMe, 2010-11-30
@FeNUMe

>>high speed with little resources
>>Yes, that's it, but what else I would like to get is the speed of development and the elegance of the output code (yes, I love beautiful things)

A
akzhan, 2010-11-30
@akzhan

C# + F# ?)

Y
Yakhnev, 2010-11-30
@Yakhnev

I think that the language should be functional, as this paradigm is closest to pure mathematics,

I would decide that if you need to do exactly mathematical calculations, then you should think about a mathematical package, such as Matlab. If you want to get concise code, then this should not be a problem here. A huge number of standard functions of mathematics and statistics. I am not familiar with the Financial Derivatives Toolbox and Financial Toolbox toolboxes, but the list of functions looks impressive.
The speed of calculations with proper programming, according to my observations, is no more than 2 times lower (in comparison with C #, for example). You can use compilers and call Matlab functions from any language. True, in this case, a significant drawback is the long start of the Matlab environment.

A
aazon, 2010-12-01
@aazon

APL, Fortran

Z
zavg, 2010-12-04
@zavg

MATLAB is optimal for most applied tasks, especially since it implies convenient integration with other languages.

K
kimor, 2013-11-13
@kimor

If the tasks involve the widespread use of existing algorithms (without interfering with their code), then Matlab.

If the algorithms will be their own or adaptation (with internal violence!) of others is required, or the need to transition one fine day to greater computing power, then Fortran.

X
xspider2000, 2015-01-29
@xspider2000

MATLAB is a paid package, if this does not suit you, then you can look towards Octave. Octave is an open source product, the syntax is similar to MATLAB. Perfect for high-level programming of mathematical calculations.

E
evsc, 2015-05-16
@evsc

Erlang, Haskell or Ruby. In general, most functional languages.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question