D popularity

John Colvin john.loughran.colvin at gmail.com
Mon Jan 21 16:24:03 PST 2013


On Monday, 21 January 2013 at 23:42:49 UTC, Nick Sabalausky wrote:

> I've heard that argument before, but I've yet to come across a 
> good
> explanation of how this "dynamic mindset" different from the 
> static
> one. Just that "it exists" and "it's different". Far as I can 
> tell so
> far, the "dynamic mindset" is just "Bugs? Efficiency? Meh, I 
> don't care
> as long as I'm piling on and shipping (easily broken) code".
>
> So what is this "dynamic mindset" that makes using dynamic 
> typing
> productive and non-bug-prone? How does it work, if it's not as I
> described above?
>

Take a look at this project: https://github.com/pydata/pandas

It's a very effective library, that's easy to use in a flexible, 
interactive fashion. It's fast due to judicious use of C and 
cython where absolutely necessary and numpy elsewhere.

One of the strengths of the library is it's ability to make a 
"best guess" as to what to do with information it's passed, 
irrelevant of what type that information is. It's not the sort of 
behaviour you'd want in a large production codebase, but for an 
interactive toolbox it speeds things up by orders of magnitude. 
Whatever you throw at it, it just works, which for a 
high-pressure financial analyst (the primary target audience) is 
absolutely invaluable.

This is all stuff that (with better shared library support) D 
could do, making it the awesome king of all languages, but at the 
moment i'll still to drafting my data analysis in python and then 
writing it up in D when it's settled.

P.S.
dmd 32bit on linux produces functional shared libraries, which 
can be happily called by IDL 
(http://www.exelisvis.com/ProductsServices/IDL.aspx). IDL rules 
the roost in several data heavy scientific arenas (fusion 
physics, medical imaging, solar physics, astophysics etc) so this 
could be a potential jackpot for D. By and large people don't 
write their own extensions for IDL as they don't want to get 
their hands dirty with C. D could be the perfect tool for the job.

I've recently started collaborating with some people from MAST 
and JET (http://www.ccfe.ac.uk/), working on some better data 
analysis tools for some of the fusion diagnostics, to be run 
online during "shots" (running the reactor) and retrospectively. 
They all use matlab (yuck) and/or IDL so naturally i'll be 
writing my code as extensions to IDL, written in D!


More information about the Digitalmars-d mailing list