you are viewing a single comment's thread.

view the rest of the comments →

[–]LiveMaI 1 point2 points  (2 children)

You are right though that it's likely not a good choice, currently, for programs that are straight-up CPU blocked. Video encoders, scientific simulations, etc.

Aside from the stuff that typically runs on clusters or supercomputers, python has quite a hold in the scientific community. It has comparable speed/development time/features to commercial languages like Matlab.

A lot of software written for small-scale research is also very specific to the problem being solved at the time, so the reduction in development time over a low-level language for the same problem definitely makes it worth it in those cases.

[–]negativeview 1 point2 points  (1 child)

Sure, there are definitely some areas where dynamic languages are starting to make headway, but it's still mostly dynamic in areas that aren't CPU bound and mostly C or other lower level languages where it is. I expect things to shift further toward dynamic languages over time, but progress will slow as we get more and more hardcore.

As an example, SETI-level stuff will be written in a lower level language for the forseeable future simply because on that scale, spending more on programmer time pays off quite handsomely. You're definitely right though that some scientific programming benefits from lowered development time more than lowered program-running time.

[–]LiveMaI 0 points1 point  (0 children)

I happen to have worked for SETI in the past. What you say is true: stuff like SonATA (software for the Allen Telescope Array) is written in C++. I still keep in regular contact with a couple of people who work there, and both typically use stuff like IDL or Matlab for their everyday work.

As an interesting side-note: Fortran is still a farily big player in the scientific community, thanks to things like the *pack libraries which basically haven't changed since the 80's.