On Wednesday, 5 August 2015 at 18:49:21 UTC, bachmeier wrote:
On Wednesday, 5 August 2015 at 17:47:49 UTC, Yura wrote:

The dominant languages in science now for production codes are Fortran or C/C++, may be D could become another option?

With kind regards,
Yury

Yes. The question is whether we can put together a group of developers to build the infrastructure, which is a lot more than just code. That means, in particular, good documentation and using it for our own projects.

Everyone these days talks about how Python is a powerhouse scientific programming language. A decade ago it was crap. I know, because I watched it for years wishing I could use it. There were some poorly documented, domain-specific, hacked-together libraries, but Python was not for the most part a suitable choice.

There is no reason we can't do the same for D. The main question is whether we are sufficiently committed to that goal. Others may consider Python, Julia, and Matlab to be good enough alternatives (I don't, but not everyone necessarily agrees with me).

Yes - I fully agree with everything you say here.

John Colvin has done great work in putting together a scientific computing portal for D, and writing a wrapper so you can write D within an ipython notebook (and call it transparently from python code). Great for rapid iteration and exploration of data, and it means you don't need to write the whole stack from scratch in D.

One place I started in a small way was implementing a limited subset of dataframe functionality. There's not much to it, but it's something very handy to be able to slurp in data from csv or hdf5 that might not fit in a more rigid format and do spreadsheet type stuff with it.

So instead of an array of variants, you define a type for the column (every entry in the column is the same type, but different columns may be of different types). In addition each column has a name and you can add and remove columns easily. I've implemented a just about usable version of that, but it's not pretty, rigorous, or especially efficient. The next stage is creating indexing by columns a la pandas.

Dataframes aren't intellectually very exciting, but they are very useful for iterative data exploration and quick prototyping since all of that starts with getting the data in from somewhere in a standard format.

The problem I have is that I have an ambitious project and too few resources for now. So I can't at this stage put much time into making anything someone else could use. But maybe we could work together on parts of this, if that would be interesting.

I am speaking to Vlad Lefenfeld about this a bit too.

On the pure numerical stuff, speak to John Colvin.

If you want you can email me laeeth laeeth dot com.


Laeeth.


Reply via email to